我正试图通过调用mvc操作方法来访问Web api方法来使用Java脚本获取aouth2访问令牌。
在这里我每30秒检查一次令牌是否过期(如果尝试获取新令牌)。如果我删除下面的代码行,这里的问题是有效的
if (Inittoken != null && Inittoken.accessToken.expires_on < currentdatetime)
如果我输入条件,则无法获取令牌。由于收到对预检请求的响应未通过访问控制检查,我得到了CORS错误:上没有'Access-Control-Allow-Origin'标头请求的资源,错误为302。我不明白的是,如果我尝试每30秒连续获取令牌(即使它没有过期),为什么它会起作用,而当我尝试仅获取令牌过期时,为什么它不起作用。我知道令牌将在一个小时后过期
setInterval(
function () {
var currentdatetime = new Date().getTime() / 1000;
if (Inittoken != null && Inittoken.accessToken.expires_on < currentdatetime) {
$.ajax({
url: '/Common/GetAccessTokenJS',
success: function (data) {
resonsedata = data;
settings.accessToken = JSON.parse(resonsedata);
},
error: function (req, status, errorObj) {
console.log("failed to get access token");
console.log(errorObj);
}
});
}
}, 30000);