我正在构建一个同时具有WebSite和WebApi的.NET FW WebApp。
我使用Visual Studio 2015模板项目设置OAuth 2.0, 有点变化。
注册/登录和退出以及控制器上的[AuthorizeAttribute]工作正常!
另外,我有几个class Foo:ApiController{}
来处理Ajax请求,
在承载令牌的情况下效果很好。
当我需要向API提交 Multipart-Formdata 时遇到问题。
并且看到User.Identity
不存在,[授权]未通过。 (即使Controller
的请求(不是ApiController
)也顺利进行。
我对Web开发很陌生,所以我可能错过了一些基本的东西。
使用Form.submit()
传递的已检查Cookie与任何其他Page请求相同。
即使来自ApiController的简单GET请求也无法授权。
Controller
和ApiController
类在身份验证方面有何区别?授权?答案 0 :(得分:1)
我知道这是基本的东西。
对于谁,谁不熟悉Visual Studio 2013 Web-API项目模板。
Auth&您网站的身份验证 由set(CMAKE_CXX_STANDARD 14)
定义
而为WebApi 时,它位于Startup.Auth.cs
WebApiConfig.cs
中有一行WebApiConfig::Register(...)
,可防止已配置的CookieAuthentication对config.SuppressDefaultHostAuthentication();
次调用起作用。
希望这有助于任何人