Login | ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/php_clientchallenge/trunk/example/ajax_example.php
Revision: 2
Committed: Sat Jun 5 23:34:14 2021 UTC (17 months, 3 weeks ago) by daniel-marschall
File size: 1276 byte(s)
Log Message:
Initial commit

File Contents

# Content
1 <?php
2
3 /*
4 * php_clientchallenge
5 * Copyright 2021 Daniel Marschall, ViaThinkSoft
6 *
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
10 *
11 * http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 */
19
20 if (file_exists(__DIR__ . '/../vendor/autoload.php')) {
21 require_once __DIR__ . '/../vendor/autoload.php';
22 }
23
24 require_once __DIR__ . '/../ClientChallenge.class.php';
25
26 define('MAX_TIME', 10); // seconds
27
28 if (isset($_REQUEST['action']) && ($_REQUEST['action'] === 'add_numbers')) {
29
30 // Check request field "vts_validation_result" for valid response of the Challenge
31 \ViaThinkSoft\RateLimitingChallenge\ClientChallenge::checkValidation(MAX_TIME);
32
33 // Do your stuff here. Example:
34 $a = $_REQUEST['a'];
35 $b = $_REQUEST['b'];
36
37 $res = array("result" => ($a+$b));
38
39 header('Content-Type:application/json');
40 die(json_encode($res));
41 }