首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure网站Rest仅接受获取,帖子返回403。可能是CORS

Azure网站Rest仅接受获取,帖子返回403。可能是CORS
EN

Stack Overflow用户
提问于 2016-07-28 08:18:44
回答 2查看 1.4K关注 0票数 3

我遇到了一个奇怪的问题。我有一个Asp.net核心WebApi项目在(网站)下运行。我在Chrome中使用DHC插件.我的服务也与AAD一起运行。

我可以请求一个GET方法很好(在登录后)。然而,当我请求任何职位时,我得到了403个回复。环顾四周的日志,我能看到这个

2016-07-28T08:14:26 PIDx详细接收请求: POST https://blahblah.azurewebsites.net/api/build/beep/ 2016-07-28T08:14:26 PIDx详细搜索到了“AppServiceAuthSession”曲奇,用于网站“bash.azurewebes.net”。长度: 856。 2016-07-28T08:14:26 PIDx信息发送回复: 403.60紫禁城 2016-07-28T08:14:26 PIDx警告跨站点请求伪造检测到用户“blah@blahblah.com”来自推荐人!

我正在使用Asp.net Core1.0。我有CORS在我的代码中启用(AllOrigin AllHeader),以及在Azure网站上的CORS有一个条目'*',应该接受每一个来源。日志流似乎甚至没有击中我的网站,但是Azure中的某些内容阻止了请求。

有什么帮助吗?

编辑:一个成功的GET方法

2016-07-28T20:24:35 PID22880详细接收请求: GET https://blah.azurewebsites.net/api/build/beep/ 2016-07-28T20:24:35 PID22880详细找到了“AppServiceAuthSession”曲奇,用于网站“bash.azurewebes.net”。长度: 876。 2016-07-28T20:24:36 PID22880使用“Session Cookie”身份验证成功地验证了blah@blah.com。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-28 22:53:01

看起来您的JavaScript客户端正在被身份验证/授权模块的CSRF保护所阻塞,该模块目前还不知道CORS配置(可能应该--我将研究这个问题)。

解决此问题的最简单方法是在客户端设置中添加自定义的用户代理 HTTP头。我们内置的CSRF保护所寻找的事情之一是客户端是否是浏览器。几乎所有主流浏览器都使用“Mozilla/.”作为用户代理字符串。将其更改为其他内容,以清楚地表明您不是浏览器,您的POST请求将顺利通过。

票数 5
EN

Stack Overflow用户

发布于 2018-08-14 13:38:16

在我的例子中,我不得不删除:

产地:https://....

更改用户代理不起作用

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

https://stackoverflow.com/questions/38630765

复制
相关文章

相似问题

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