gpt4 book ai didi

c# - Web API 2 身份验证

转载 作者:太空宇宙 更新时间:2023-11-03 16:01:44 24 4
gpt4 key购买 nike

我正在尝试对我的移动应用程序进行身份验证(用于测试从 visual studio 运行)以在单页应用程序中对我的 Web API 2 身份验证 token 进行身份验证

但是Ajax总是取消状态为取消

我已经启用了 CORS,如下所示

var cors = new EnableCorsAttribute("*", "*", "*") {SupportsCredentials = true};
config.EnableCors(cors);

//Use only bearer token authentication
config.SuppressDefaultHostAuthentication();

网络配置

 <system.web>
<authentication mode="None" />
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
<roleManager enabled="true" />
<httpModules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
</httpModules>
</system.web>

我的 Ajax 请求

 $.ajax('http://retail.leap-tel.com/token', {
type: "POST",
data: data,
xhrFields: {
withCredentials: true
}

Chorme 开发者工具日志

状态:已取消

Request URL:http://retail.leap-tel.com/token
Request Headersview source
Accept:*/*
Cache-Control:no-cache
Content-Type:application/x-www-form-urlencoded; charset=UTF-8
Origin:http://localhost:1539
Pragma:no-cache
Referer:http://localhost:1539/index.html
User-Agent:Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36
Form Dataview sourceview URL encoded

最佳答案

我在 DurandalAuth 中做了一些更改以启用 CORS,并在另一个 repo 中创建了一个示例 Javascript 客户端

检查一下

https://github.com/yagopv/DurandalAuth/commit/4e7c09bc589345c946319b42d320e2b4d8313573

https://github.com/yagopv/DurandalAuthjsclient

也许您的主要问题是关于使用默认的 Web API CORS 属性。您应该使用 Microsoft.Owin.Cors 属性而不是使用 Owin 中间件

关于c# - Web API 2 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21031831/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com