首页 > 解决方案 > 使用 oath2 检索身份验证代码的 Ajax 调用

问题描述

我正在使用一些 API 点设置来获取数据。我必须命中的第一个端点返回一个身份验证代码,该代码将传递到其余的调用标头中。

我似乎在第一次通话时遇到问题,ajax并且它适用于postman. 我不断收到错误消息,但没有消息。

我是否正确设置?它正在使用 oauth2,我对此没有任何经验。

一个 jsfiddle 示例https://jsfiddle.net/7f5dgn08/

var url = 'http://webaddress';

 $.ajax({
    type: "oauth2",
    url: url,
    cache: false,
    async: true,
    crossDomain: true,
    headers: {
        username: "username",
        password: "pass"
    },
    dataType: "json",
     success: function (data) {

        localStorage.setItem('aCode', JSON.stringify(data))
    },
     error: function (jqXHR, exception) {
        console.log(jqXHR.responseJSON);
    }
 });

标签: javascriptajaxoauth-2.0

解决方案


如果它在邮递员中有效,但在浏览器中无效,则可能发生了 CORS 错误。Request Method如果调用的是POST或,请查看浏览器的开发工具OPTION

如果动词是OPTION,您可能会收到没有响应正文的错误,但您还将获得与 CORS 问题相关的登录控制台。

如果错误与 CORS 相关,您必须将 CORS 策略添加到您的端点,并在响应标头中添加一个Access-Control-Allow-Origin标头,该标头的值是您的前端所在的地址。


推荐阅读