这里我有卷曲请求的问题。
我想在几个文件中阻止它。
这是我在服务器上的代码
MyFile.php
Class MyFile {
public function getName() {
return "hi";
}
public function getBday() {
return '01-01-1970';
}
}
$my = New MyFile();
return json_encode($my->$_GET['functionName']());
本地主机/测试/ MyFile.php?functionName =的getName
输出: hi
本地主机/测试/ MyFile.php?functionName = getBday
输出: 01-01-1970
我在 AJAX 中运行该文件,为了安全起见,我在AJAX请求中使用 JWT令牌作为授权标头。
那件事情很好。
但是当我尝试通过另一个网站的curl访问该文件时。那么它也在响应数据。但我必须阻止它。
AnotherServerFile.php
<?php
$header = array();
$header[] = 'Authorization: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpYXQiOjE1MTk2NTA4NjMsImp0aSI6InQ4OTU3RjBIbE1yQ21UREdUdTNCK0VZdUFsTVZRZUZhNHhnckRyMzRnNXc9IiwiaXNzIjoibmlldHdhY2h0ZW4ubmwiLCJuYmYiOjE1MTk2NTA4NjMsImV4cCI6MTUxOTY1MjY2M30.wN7MA782ix-ln8uKlGNsc-oxMxJNa3hfmY9GjzhVeFhEZm5IJOMd0PU8ppUxDU9_yDGcbKsuPzNzCh6CmPQ1qA';
$header[] = "X-Requested-With: XMLHttpRequest";
$service_url = 'localhost/test/MyFile.php?functionName=getName';
$curl = curl_init($service_url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); //IMP if the url has https and you don't want to verify source certificate
$curl_response = curl_exec($curl);
$response = json_decode($curl_response);
curl_close($curl);
var_dump($response);
此文件位于另一台服务器上。像
example.com/AnotherServerFile.php
AnotherServerFile.php 文件可以通过cURL访问我的 MyFile.php 代码。
所以,我想阻止使用 AnotherServerFile.php 访问 MyFile.php
任何帮助将不胜感激。