使用ASP .NET的ExtJs 5 Ajax请求

时间:2014-10-21 12:37:05

标签: ajax asp.net-mvc azure extjs

尽管尽我所能,但我无法将带有Json数据的Ajax请求发送到远程Web服务器。我不知道其他什么地方我可以启用CORS并且我的想法已经用完了。

Azure网站应用设置:

 cors:allowOrigins: *

MVC控制器:我安装了NuGet Cors软件包

[EnableCors(origins: "*", headers: "*", methods: "*")]

的Web.config:

<httpProtocol>
  <customHeaders>
    <clear />
    <add name="Access-Control-Allow-Origin" value="*" />
  </customHeaders>
</httpProtocol>

ExtJs Ajax请求:

 Ext.Ajax.request({
            url: app.utilities.url,
            defaultHeaders: {
                'Access-Control-Allow-Origin': '*',
                'Access-Control-Allow-Methods': 'GET,PUT,POST,DELETE,OPTIONS',
                'Access-Control-Allow-Headers': 'Content-Type, Authorization,Content-Length, X-Requested-With'
            },
            cors: true,
            useDefaultXhrHeader: false,
            params: {
                jsonData: Ext.util.JSON.encode(formData)
            }

但我仍然得到:      跨源请求已阻止:同源策略禁止在{my url}读取远程资源。可以通过将资源移动到同一域或启用CORS来修复此问题。

我有什么遗失的吗?

2 个答案:

答案 0 :(得分:0)

仅针对开发目的,您可以在浏览器中设置以下参数。这对我有用。

- disable-web-security --allow-file-access-from-files --allow-file-access

答案 1 :(得分:0)

你会考虑JsonP(带填充的JSON)吗?

Field