我将后端API作为一个单独的项目与前端HTML5应用程序使用它.我正在使用Yeoman进行前端开发. Yeoman在localhost:3501上运行,后端在localhost:3000上运行.当我从浏览器发出API请求时(使用AngularJS的$http),我点击相同的原始策略:
XMLHttpRequest cannot load http://localhost:3000/venues. Origin http://localhost:3501 is not allowed by Access-Control-Allow-Origin.
AFAIK,相同的原始政策应该只在跨不同域提出请求时启动.当我们从localhost请求localhost(虽然是不同的端口)时,为什么会抱怨?
我怎样才能完成这项工作,这会导致生产中出现问题吗?
端口也计入跨域请求,因此http:// localhost:3000和http:// localhost:3501是2个不同的域(从浏览器的角度来看).
如果您需要在不同端口上运行这两个应用程序(客户端和后端),请考虑使用http://enable-cors.org/