我通过ajax通过
调用远程php文件$.ajax({
url: 'home.php',
type: 'POST',
data: formData,
crossOrigin: true,
async: true,
success: function (data) {
$("#home").trigger('reset');
console.log(data);
},
error: function (data, textStatus, jqXHR) { $("#home").trigger('reset');},
cache: false,
contentType: false,
processData: false
});
这是home.php中的代码
$url = 'http://api.example.com/post-data';
header("Location: $url", TRUE, 307);
return 'User Is Inserted';
我已启用此功能
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: PUT, GET, POST");
header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");
我可以像我希望的那样拨打网址。但是,在客户端,我收到此错误
阻止跨源请求:同源策略禁止读取 http://api.example.com/post-data处的远程资源(原因:CORS 标题'Access-Control-Allow-Origin'缺失。)
对于修复,我希望能够抑制重定向代码返回的任何错误
header("Location: $url", TRUE, 307);
或操纵返回的错误。
我是否可以通过某种方式隐藏客户端开发人员面板中的错误Cross-Origin Request Blocked:...
?
我在共享主机上,支持团队表示已启用curl并且get_file_contents有效,但事实并非如此。我使用的是PHP 7。
php文件
<?php
/**
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
*/
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: PUT, GET, POST");
header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");