0

javascript .match() を使用して URL の access_token 変数を取得するにはどうすればよいですか?

http://www.facebook.com/connect/login_success.html#access_token=pYBACn8NQeCAVWgiaFG4ZD&expires_in=0

助けてくれてどうもありがとう!

4

3 に答える 3

2
var url = 'http://www.facebook.com/connect/login_success.html#access_token=pYBACn8NQeCAVWgiaFG4ZD&expires_in=0';
var token = url.split("#")[1].match(/access_token=([^&]+)/)[1];
于 2012-05-27T06:12:25.567 に答える
1

Parthのソリューションと同じですが、分割がなく、少し厳密です:

var url = 'http://www.facebook.com/connect/login_success.html#access_token=pYBACn8NQeCAVWgiaFG4ZD&expires_in=0';
var token = url.match(/(?:#|#.+&)access_token=([^&]+)/)[1];
于 2012-05-27T10:06:51.817 に答える
1

Eugene のものと同じですが、一致が失敗した場合に例外をスローしません

var url = 'http://www.facebook.com/connect/login_success.html#access_token=pYBACn8NQeCAVWgiaFG4ZD&expires_in=0';
var token = (url.match(/(?:#|#.+&)access_token=([^&]+)/) || ['', null])[1];

トークンが URL に存在しない場合は null を返します

于 2012-05-27T10:21:03.203 に答える