Wenn ich einen OAuth Authorization Server in asp.net Webapi 2 eingerichtet habe, wie kann ich den Token-Endpunkt so einstellen, dass er json anstelle eines formcodierten Posts akzeptiert?Wie setzt man das katana-project, um Token-Anfragen im JSON-Format zu erlauben?
Mit der Probe http://www.asp.net/web-api/overview/security/individual-accounts-in-web-api
Ich habe versucht, application/json mit
{
"grant_type":"password",
"username":"Alice",
"password":"password123"
}
Ich erhalte die Antwort 400 Bad Request
{
"error" : "unsupported_grant_type"
}
wo als Content-Typ der Anwendung zu senden/x-www-form-urlencoded und Körper von grant_type=password&username=Alice&password=password123
funktioniert wie erwartet.
200 OK
{
"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"
}
Durch das Hinzufügen bieten „Content-Type: application/json“ zu der Header der Anfrage? – rwisch45
Das habe ich zuerst ausprobiert. Ich werde es noch einmal versuchen, vielleicht habe ich einen Tippfehler gemacht. –
Verloren 3 Stunden auf diesem .. googling "unsupported_grant_type" führen mich zu Ihrem Beitrag, um das Problem zu offenbaren. –