【发布时间】:2019-04-11 00:31:45
【问题描述】:
这里我正在调用一个控制器方法 GetAccessTokenAsync,它返回一个 JSON 结果,其中包含来自 auth0 的访问令牌
function GetAccessToken() {
$.ajax({
type: "GET",
url: "https://localhost:44301/Account/GetAccessTokenAsync",
contentType: 'json',
dataType: 'json',
success: function (data) {
JSON.stringify(data)
}
});}
这是控制器方法代码
public async Task<JsonResult> GetAccessTokenAsync()
{
var accessToken = await HttpContext.GetTokenAsync("access_token");
return Json(accessToken);
}
这是我试图从上面的 ajax 调用中获取值到请求标头中的地方,但它一直返回未定义。但是,该调用确实包含正确的访问令牌,只是没有正确设置它
function GetAll() {
var accessToken = GetAccessToken();
$.ajax({
type: "GET",
contentType: 'json',
dataType: 'json',
crossDomain: false,
url: "https://localhost:44348/api/v1/trialuser/1",
beforeSend: function (request) {
request.setRequestHeader("Authorization", "Bearer " + accessToken);
request.setRequestHeader("Access-Control-Allow-Origin", "https://localhost:44301");
},
success: function (data) {
$.each(data, function (key, item) {
$('<tr>', { html: formatItem(item) }).appendTo($("#getAllTable"));
$('#show').attr("disabled", true)
})
},
});}
还有其他人有这个问题吗?我对 jquery 和 ajax 调用的了解并不广泛,因此感谢任何示例
【问题讨论】:
标签: jquery ajax auth0 bearer-token request-headers