我使用在Heroku上的快速應用。我嘗試從另一個NodeJS應用程序對它進行RESTful請求。迴應預檢要求未通過訪問控制檢查的NodeJS/Heroku的/快遞
下面是從Heroku的應用程序的一個片段,稱爲app.js
:
var express= require("express");
app.get("/results",function(req,res){
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
res.header("Access-Control-Allow-Methods", "GET,PUT,POST,DELETE,OPTIONS");
});
下面是從一個應用程序,我在本地運行一個片段,local-app.js
:
var request= require("superagent");
var req= request.get("http://url-to-app-js.com?query=1").set(
"Access-Control-Allow-Origin", "http://url-to-app-js.com",
"Access-Control-Allow-Methods", "GET,PUT,POST,DELETE,OPTIONS",
"Access-Control-Allow-Headers", "Content-Type, Authorization, Content-Length, X-Requested-With"
);
req.end(function(err,res){
// do things
});
當我運行local-app.js
,我得到這個在我的瀏覽器控制檯錯誤:esponse to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access.
我知道我可以運行瀏覽器,鉻,具有一定的安全設置已關閉,但我需要能夠在不這樣做的情況下運行此操作。
我在做什麼錯?我如何解決它?
沒有ü以往任何時候都得到這個工作? –