0

我提出了一个 oAuth 请求令牌的请求,我通过访问一个特殊的 URL 来做到这一点。这个请求的结果(页面内容)是这样的,我怎样才能从这个中获取 auth_token?

oauth_token=TBFdNoytaizrfMAWNZ6feqssNz3BsozHk5AesIioX8u8Ec&oauth_token_secret=DtQ3jiUIe33VdRcBAKwVQJRWpgKtEHi3m1yl3k0nlsHCBj0&oauth_callback_confirmed=true
4

4 回答 4

1

你可以这样找到它:

var string = 'oauth_token=TBFdNoytaizrfMAWNZ6feqssNz3BsozHk5AesIioX8u8Ec&oauth_token_secret=DtQ3jiUIe33VdRcBAKwVQJRWpgKtEHi3m1yl3k0nlsHCBj0&oauth_callback_confirmed=true';

var match = /oauth_token=([^&]*)/.exec(string);
if(match)
{
    var oauth_token = match[1];
}

另外,我认为在这里展示您的信息不是一个好主意,oauth_token_secret因为我认为只有您应该知道这个秘密,对吧?

于 2012-09-02T19:04:35.427 回答
1
var oAuth = /auth_token=(.*?)&/.exec( str )[1];
于 2012-09-02T19:06:30.603 回答
1
 // token param + value
 var tokenParam = ostr.split("&")[0];

 // only token value
 var tokenValue = tokenParam.split("=")[1];
于 2012-09-02T19:06:41.407 回答
1

请求的结果与查询字符串的格式相同。这可以使用常见的 JS 函数进行解析。

var str = "oauth_token=TBFdNoytaizrfMAWNZ6feqssNz3BsozHk5AesIioX8u8Ec&oauth_token_secret=DtQ3jiUIe33VdRcBAKwVQJRWpgKtEHi3m1yl3k0nlsHCBj0&oauth_callback_confirmed=true";

var auth_token = getQueryVariable("oauth_token", str);
console.log(auth_token);

function getQueryVariable(variable, query) {
    if (!query) query = window.location.search.substring(1);
    var vars = query.split('&');
    for (var i = 0; i < vars.length; i++) {
        var pair = vars[i].split('=');
        if (decodeURIComponent(pair[0]) == variable) {
            return decodeURIComponent(pair[1]);
        }
    }
    console.log('Query variable %s not found', variable);
}​
于 2012-09-02T19:11:45.763 回答