Subversion Repositories php_clientchallenge

Rev

Rev 4 | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. <!DOCTYPE HTML>
  2. <html>
  3.  
  4. <head>
  5.         <title>Example of server request using Client-Challenge in order to mitigate resource starvation</title>
  6.         <meta charset="utf-8">
  7.         <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
  8.         <script src="https://cdnjs.cloudflare.com/ajax/libs/js-sha3/0.8.0/sha3.min.js"></script>
  9.         <script src="../ClientChallenge.js"></script>
  10.  
  11. <script>
  12.  
  13. let error_cb = function (request, status, error) {
  14.         $("#out").val("Error!");
  15.         alert(error);
  16. }
  17.  
  18. let callback = function(params, vts_validation_result) {
  19.         $.ajax({
  20.                 type: "POST",
  21.                 url: "ajax_example.php",
  22.                 data: {
  23.                         // This is required:
  24.                         "vts_validation_result": vts_validation_result,
  25.  
  26.                         // This you can set yourself:
  27.                         "action": "add_numbers",
  28.                         "a": params['a'],
  29.                         "b": params['b']
  30.                 },
  31.                 success: function(data) {
  32.                         if ("error" in data) {
  33.                                 error_cb(null,null,data["error"]);
  34.                         } else {
  35.                                 $("#out").val(data["result"]);
  36.                         }
  37.                 },
  38.                 error: error_cb
  39.         });
  40. }
  41.  
  42. function calc() {
  43.         var a = $("#in_a").val();
  44.         var b = $("#in_b").val();
  45.         var params = {
  46.                 "a": a,
  47.                 "b": b
  48.         };
  49.         $("#out").val("Please wait...");
  50.         vts_validated_call("ajax_get_challenge.php", callback, params, error_cb);
  51. }
  52.  
  53. </script>
  54. </head>
  55.  
  56. <body>
  57.  
  58. <h2>Example of server request using Client-Challenge in order to mitigate resource starvation</h2>
  59.  
  60. <p><input id="in_a" value="2"> + <input id="in_b" value="3"> = <input id="out"> <input type="button" onclick="calc()" value="Calculate"></p>
  61.  
  62. </body>
  63.  
  64. </html>
  65.