首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >未启用ASP.NET核心2 CORS

未启用ASP.NET核心2 CORS
EN

Stack Overflow用户
提问于 2018-08-20 15:00:31
回答 1查看 594关注 0票数 1

我正在为web服务开发一个基于Range6客户机和ASP.NET核心WebAPI的web应用程序。

目前(初始开发阶段),我有一个简单的体系结构,由两个web服务组成,一个用于管理身份验证和身份,另一个包含应用逻辑(业务逻辑,更新db,ecc.)。

我使用JWT Bearer令牌进行客户端身份验证。

我的身份验证服务一切正常,但是当我试图调用应用程序服务时,我在Chrome浏览器控制台中获得了这个错误:

加载http://localhost:59207/api/Files/Upload失败:请求的资源上没有“访问-控制-允许-原产地”标头。因此,“http://localhost:4200”源是不允许访问的。响应具有HTTP状态代码500。

此错误之前还有另一个错误:

POST http://localhost:59207/api/Files/Upload 500 (内部服务器错误)

在某种程度上,我得到的第二个错误是否与它前面的内部服务器错误有关?

我测试我的邮递员的电话,一切正常,没有服务器端的错误和我想从我的服务返回的数据。

我已经把我所知道的关于ASP.NET核心中CORS的所有东西都准备好了。

名为"ConfigureServices“的启动类方法包含,作为第一行:

代码语言:javascript
运行
复制
        services.AddCors(options =>
        {
            options.AddPolicy("AllowAll",
                builder =>
                {
                    builder
                    .AllowAnyOrigin()
                    .AllowAnyMethod()
                    .AllowAnyHeader()
                    .AllowCredentials();
                });
        });

然后在“配置”方法中调用它:

代码语言:javascript
运行
复制
app.UseCors("AllowAll");

此外,我还将EnableCors属性放在每个控制器类上,如下所示:

代码语言:javascript
运行
复制
[EnableCors("AllowAll")]

有人知道我该怎么摆脱这个烂摊子吗?据我所知,这就是CORS的用途,我已经让它在其他项目上以这种方式运行(但从未使用过ASP.NET核心2)。

提前谢谢你

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-20 15:38:00

这可能不是你的情况的答案,但我经常遇到这个问题在过去。当两个localhost之间就POST请求进行对话时,这是一个POST问题。

尝试使用另一个浏览器,看看它是否有效;如果是,您可以通过禁用Chrome继续使用Security

代码语言:javascript
运行
复制
chrome.exe --user-data-dir="C://Chrome dev session" --disable-web-security

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51933526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档