asp.net-web-api – 如何设置katana-project以允许json格式的令牌请求?
发布时间:2020-05-23 19:43:11 所属栏目:asp.Net 来源:互联网
导读:当我在asp.net webapi 2中设置OAuth授权服务器时,如何设置令牌端点以接受json而不是表单编码的帖子? 使用样本http://www.asp.net/web-api/overview/security/individual-accounts-in-web-api 我试着发送application / json 同 {grant_type:password,usern
|
当我在asp.net webapi 2中设置OAuth授权服务器时,如何设置令牌端点以接受json而不是表单编码的帖子? 使用样本http://www.asp.net/web-api/overview/security/individual-accounts-in-web-api 我试着发送application / json {
"grant_type":"password","username":"Alice","password":"password123"
}
我收到了回复 {
"error" : "unsupported_grant_type"
}
其中作为application / x-www-form-urlencoded的内容类型 200好的 {
"access_token" : "08cQ33ZG728AqBcj1PBsRSs4iBPc02lLCZfpaRRWLx2mH_wpQzMwGDKS7r7VgJiKUjUFaq6Xv0uguINoiB_evVbVOtvyWaqAYvc0HRjlgrbj12uQqFbUB7bgH-jiyfhumkwuTSTVHfKUhBjCuD_pbyxEbu2K5WSJpUVge_SGxnb-htm4ZNf1qKDmpEnP9IpZVeJa-KnV0m0gEmP04slMW_JrO390LzCNvXZwVk1yMNuvDakk8tWX7Y6WkFoh7vtW6xfhw3QMbmnvS6px70yMWcTksRNG2bdmi4SenhuRTJx8IsCMnz-4Co7KiCNJGF7KLeU4WzE-LSqXv3mQ30CIQ7faXoMn53p83wZ1NoXYyhsNrQD4POUns_Isb_Pax5gvpZEdyo8zr1r7wb0dS7UXvJb0PWzLHc57Pg3u0kmcizQ","token_type" : "bearer","expires_in" : 1209599,"userName" : "Alice",".issued" : "Wed,30 Oct 2013 15:16:33 GMT",".expires" : "Wed,13 Nov 2013 15:16:33 GMT"
}
解决方法基于OAuthAuthorizationServerHandler的当前实现,你不能。private async Task InvokeTokenEndpointAsync()
{
DateTimeOffset currentUtc = Options.SystemClock.UtcNow;
// remove milliseconds in case they don't round-trip
currentUtc = currentUtc.Subtract(TimeSpan.FromMilliseconds(currentUtc.Millisecond));
IFormCollection form = await Request.ReadFormAsync();
var clientContext = new OAuthValidateClientAuthenticationContext(
Context,Options,form);
await Options.Provider.ValidateClientAuthentication(clientContext);
if (!clientContext.IsValidated)
{
_logger.WriteError("clientID is not valid.");
if (!clientContext.HasError)
{
clientContext.SetError(Constants.Errors.InvalidClient);
}
await SendErrorAsJsonAsync(clientContext);
return;
}
var tokenEndpointRequest = new TokenEndpointRequest(form);
}
因此,为了尝试这一点,您需要提供自己的OAuthAuthorizationServerMiddleware实现,它会重载CreateHandler,以便您可以提供自己的AuthenticationHandler实现< OAuthAuthorizationServerOptions> (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- ADO.NET 2.0 Dataset和Datatable 新功能新特性
- asp.net – 错误:类型存在于两个目录中
- asp.net – 如何防止开放重定向攻击?
- asp.net-mvc – 如何添加到Azure会话Cookie HttpOnly和Secu
- asp.net-mvc – ASP.Net MVC输出缓存:指令或配置设置配置文
- asp.net-mvc – 为什么被赋予NoValidate属性?
- asp.net-mvc – 如何在Web表单和MVC2应用程序之间共享基于.
- asp.net – 如何使用命令行msbuild部署VS2012网站项目,而无
- asp.net-mvc – 由于对输入文本框进行过滤而导致绑定列表更
- asp.net-mvc – 让System.Web.Optimization在类库中的剃刀视
推荐文章
站长推荐
- asp.net-mvc – Razor视图引擎2.x中有什么新功能
- asp.net – 忽略在IIS中为代码400(错误请求)配置
- asp.net-mvc – 在哪里托管我的MVC4应用程序?
- asp.net-mvc – 第一个Web API会话请求非常慢
- asp.net – .Net Core 2 Spa模板与角度材料
- asp.net – 评论未使用的代码会不会给我的页面带
- asp.net-mvc – 如何阻止用户在MVC3应用程序上登
- asp.net-core – ClaimTypes的ASP.NET要求
- 无法启动ASP.NET Development服务器,因为正在使用
- 无法显示ASP.Net UpdateProgress
热点阅读
