2017-04-26 105 views
1

我已經將我的MVC5應用程序部署到IIS,並且我的控制器上的其中一個方法返回一個json對象。當我瀏覽到該網站時,該應用可以正常工作。如果我直接調用控制器上的方法,我可以在瀏覽器中看到json對象。從不同的應用程序調用MVC控制器方法

但現在我正在構建一個Aurelia應用程序,並在api方法上執行一次獲取。在門牌號與開發工具,控制檯下,我得到了以下錯誤:

No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin ' http://localhost:55829 ' is therefore not allowed access.

什麼我需要做的,我的託管應用程序的web.config?

這是我特意打電話從Aurelia大街方法:

http.fetch('http://localhost/MyCart/Home/GetProducts') 
    .then(result => result.json()) 
    .then(data => { 
     console.log(data.description); 
}); 
+0

是在Aurelia路上應用單獨託管?如果它在自己的端口上,那麼你需要啓用CORS來在兩者之間進行通信。這取決於你用來提供'http'的庫,但它可能有一些你可以打開的「CORS」模式,服務器也需要CORS設置。 – thinkOfaNumber

+0

通過在我的託管應用程序的web.config上啓用CORS來獲得它的工作。 Aurelia應用程序處於開發模式,因此只有通過Visual Studio才能託管。 –

回答

0

我得到了它通過使我的託管應用程序的web.config CORS工作:

<system.webServer> 
    <httpProtocol> 
     <customHeaders> 
      <add name="Access-Control-Allow-Origin" value="*" /> 
     </customHeaders> 
    </httpProtocol> 
</system.webServer> 
相關問題