【发布时间】:2013-10-28 21:13:11
【问题描述】:
当我在 asp.net webapi 2 中设置 OAuth 授权服务器时,如何将令牌端点设置为接受 json 而不是表单编码的帖子?
使用示例http://www.asp.net/web-api/overview/security/individual-accounts-in-web-api
我尝试发送应用程序/json 与
{
"grant_type":"password",
"username":"Alice",
"password":"password123"
}
我收到回复 400 错误请求
{
"error" : "unsupported_grant_type"
}
作为 application/x-www-form-urlencoded 的内容类型
和grant_type=password&username=Alice&password=password123 的正文
按预期工作。
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"
}
【问题讨论】:
-
通过在请求的头部添加“Content-Type: application/json”?
-
这是我首先尝试的。我再试一次,也许我打错了。
-
为此损失了 3 个小时。谷歌搜索“unsupported_grant_type”将我带到您的帖子以揭示问题。
标签: asp.net-web-api owin katana