Angularjs 获取CORS节点http代理以响应200个选项

Angularjs 获取CORS节点http代理以响应200个选项,angularjs,node.js,proxy,node-http-proxy,Angularjs,Node.js,Proxy,Node Http Proxy,我试图让一个运行在:9000上的网页向运行在:8080上的节点上的反向代理发出请求,以接受请求,就像它在同一个域上一样。我了解到,不同的端口==不同的域,因此会发送选项请求。我的服务器带着401 unauthorized返回,angular的http客户端得到的响应没有数据,没有带有控制台错误“无效http状态代码401 unauthorized”的代码 我只想让反向代理像在同一个域上一样,对这些选项请求说“确定”。反向代理负责使用预期的CORS头响应选项请求。能否提供有关节点反向代理的更多详细

我试图让一个运行在:9000上的网页向运行在:8080上的节点上的反向代理发出请求,以接受请求,就像它在同一个域上一样。我了解到,不同的端口==不同的域,因此会发送选项请求。我的服务器带着401 unauthorized返回,angular的http客户端得到的响应没有数据,没有带有控制台错误“无效http状态代码401 unauthorized”的代码


我只想让反向代理像在同一个域上一样,对这些选项请求说“确定”。

反向代理负责使用预期的CORS头响应选项请求。能否提供有关节点反向代理的更多详细信息。它是基于express的吗

这些是您需要响应的标题(您的用例可能会有所不同,但这是我在最近的项目中需要的):


反向代理负责使用预期的CORS头响应选项请求。能否提供有关节点反向代理的更多详细信息。它是基于express的吗

这些是您需要响应的标题(您的用例可能会有所不同,但这是我在最近的项目中需要的):


另请注意,在角度方面,如果您希望在向反向代理发送请求时使用相同的cookie,则可能需要调查
with credentials:true
标志的使用情况,否则,您的cookie将不会添加到请求中。它不是基于express的-它只是一个运行位于spring服务器前面的节点http代理的小javascript文件。在这种情况下,您的http代理可能正在将http选项请求转发到spring服务器,spring服务器负责回答选项请求。您可以检查节点http代理(为所有只向console.log写入详细信息的请求注册事件处理程序)和spring服务器的日志,以验证CORS请求是否正在转发到spring服务器。另请注意,如果在向反向代理发送请求时要使用相同的cookie,您可能需要调查
with credentials:true
标志的使用情况,否则,您的cookie将不会添加到请求中。它不是基于express的-它只是一个运行位于spring服务器前面的节点http代理的小javascript文件。在这种情况下,您的http代理可能正在将http选项请求转发到spring服务器,spring服务器负责回答选项请求。您可以检查节点http代理(为所有只将详细信息写入console.log的请求注册事件处理程序)和spring服务器的日志,以验证CORS请求是否正在转发到spring服务器。
res.setHeader('Access-Control-Allow-Origin', 'whatever.com:9000');
res.setHeader('Access-Control-Allow-Headers', 'Content-Type');
res.setHeader('Access-Control-Allow-Credentials', true); // you probably dont want this one unless there is auth/cookies involved
res.setHeader('Access-Control-Allow-Methods', 'GET,PATCH,POST,PUT,DELETE');