【问题标题】:Asana Javascript Oauth Error no route foundAsana Javascript Oauth 错误找不到路由
【发布时间】:2014-03-08 02:45:29
【问题描述】:

因此,当我尝试将 OAuth 与 Asana 的 API 一起使用时,我一直收到错误消息。我收到的错误是“找不到路线错误”。我究竟做错了什么?我知道该请求很可能是正确的,但我相信它返回一个散列 URL,我应该取消它。这是我从 Facebook OAuth 使用的示例代码,因此代码可能不正确并且特定于 Facebook api。

这是我的代码:

$(function () {

    checkHashLogin();

    $('#signon').click(function () {
        asanaLogin();
    });
})
}); 

var appID = ****************;

function asanaLogin() {
    var path = 'https://app.asana.com/-/oauth_authorize';
    var queryParams = ['client_id=' + appID,
    'redirect_uri=' + window.location,
    'response_type=token'];
    var query = queryParams.join('&');
    var url = path + query;
    window.location.replace(url);
}
function checkHashLogin() {
if (window.location.hash.length > 3) {
    var hash = window.location.hash.substring(1);
    if(hash.split('=')[0] == 'access_token')
    {
        var path = "https://app.asana.com/-/oauth_authorize";
        var queryParams = [hash, 'callback=displayUser'];
        var query = queryParams.join('&');
        var url = path + query;

        //use jsonp to call the graph
        var script = document.createElement('script');
        script.src = url;
        document.body.appendChild(script);
    }

}
} 



function displayUser(user) {
    setTimeout(function () { }, 1000);
    if (user.id != null && user.id != "undefined") {
       //Do Stuff
    }
    else {
        alert('user error');
    }
}

这是我的应用凭据的照片。我的重定向位置只是本地的,因为我还没有将它托管在服务器上。

【问题讨论】:

    标签: javascript jquery oauth asana


    【解决方案1】:

    看起来您正在执行url = path + query,而您可能需要执行url = path + "?" + query - 查询字符串未分隔,这意味着您最终请求了无法识别的https://app.asana.com/-/oauth_authorizeclientId=... 之类的路径:因此, “找不到路线”。

    希望有帮助!

    【讨论】:

      猜你喜欢
      • 2014-12-29
      • 1970-01-01
      • 2017-09-25
      • 1970-01-01
      • 2015-08-15
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多