gpt4 book ai didi

php - 从 NodeJS 服务器到 PHP 服务器的 CORS AJAX 请求

转载 作者:太空宇宙 更新时间:2023-11-04 02:25:16 24 4
gpt4 key购买 nike

所以我从 Node 服务器向 PHP 服务器发出 AJAX 请求。 PHP 服务器如下所示:

header('Access-Control-Allow-Origin: *');
header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");

echo json_encode($data);

请求是通过 AngularJS 发送的,列表如下:

app.controller('MainController', function($scope, $http) {

var req = {
method: 'POST',
url: 'http://testsite.com/api/login',
headers: {
'Content-Type': 'application/json'
},
data: {
Data : {
email: 'test',
}
}
}

$http(req)
.success(function(response){ console.log(response); })
.error(function(){ console.log("error")});
});

这非常有效。当我在 NodeJS 应用程序中运行它时,问题就开始了,除了带有 ExpressJS 的 NodeJS 正在运行 node bin/www 之外,一切都完全相同。我得到的错误是:

Failed to load resource: the server responded with a status of 405 (Method Not Allowed)
Failed to load resource: Request header field Content-Type is not allowed by Access-Control-Allow-Headers
XMLHttpRequest cannot load http://testsite.com/api/login. Request header field Content-Type is not allowed by Access-Control-Allow-Headers

知道我可能会错过什么吗?

最佳答案

尝试在 PHP 服务器响应中添加此 header

Access-Control-Allow-Methods: GET, POST

客户端需要知道服务器可以处理哪些方法作为飞行前请求的一部分

关于php - 从 NodeJS 服务器到 PHP 服务器的 CORS AJAX 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30863733/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com