情况是我们有一个用PHP编写的rest API。当用户向我们的站点发送请求时,我们正在调用节点脚本来调用其余API以获取JSON并返回呈现的javascript模板以输出到页面上。
但是,在其余脚本中有一项检查,以确保$_SERVER['HTTP_ORIGIN']
与$_SERVER['HTTP_HOST']
相同。当我通过浏览器导航到其他URL时,$_SERVER['HTTP_ORIGIN']
设置正确,但是当我从节点脚本发出get
请求时,它会留空。
我尝试设置Origin
标头。这是我用Google搜索的内容:
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Origin
所以我在节点中的请求是:
https.get({
path:path,
headers:{
"Origin": "http://example.com"
}
},function(res){
..etc
但是error_log
ing $_SERVER['HTTP_ORIGIN']
显示它仍然是空白的。
如何让PHP知道$_SERVER['HTTP_ORIGIN']
是当前服务器?
谢谢!