我试图为此找到解决方案,但所有即将出现的解决方案都是针对以前版本的 ASP.Net。
我正在使用 JWT 身份验证中间件并具有以下方法:
private async Task GenerateToken(HttpContext context)
{
var username = context.Request.Form["username"];
var password = context.Request.Form["password"];
//Remainder of login code
}
这会像获取表单数据一样获取发送的数据,但我的 Angular 2 前端将数据作为 JSON 发送。
login(username: string, password: string): Observable<boolean> {
let headers = new Headers({ 'Content-Type': 'application/json' });
let options = new RequestOptions({ headers: headers });
let body = JSON.stringify({ username: username, password: password });
return this.http.post(this._api.apiUrl + 'token', body, options)
.map((response: Response) => {
});
}
我首选的解决方案是将其作为 JSON 发送,但我未能成功检索数据。我知道它正在发送,因为我可以在 fiddler 中看到它,如果我使用 Postman 并且只发送表单数据,它就可以正常工作。
基本上我只需要弄清楚如何改变这一行来读取 json 数据
var username = context.Request.Form["username"];