私はFirefox Extensionをビルドしています。私はグラフAPIを使用しています。これは正常に動作しますが、種類の愚か https://stackoverflow.com/questions/10301146/facebook-login-within-a-firefox-add-on要求に応じてFacebookのアクセストークンをキャッチしますが、どうですか?
誰もがそれぞれのFirefoxセッションで拡張を使用しませんので、:のようにブラウザを起動しながら、現時点では私は、各ユーザーのアクセストークンをキャッチ。だから、私がしようとしているのは、アクセストークンをキャッチするか、より正確にWladimir Palantが要求に応じて推薦するメソッドを呼び出すことです。私のコードはこのように見えますが、getAccessToken()は前述のメソッドです。
onLoad: function(){
var NoteHandler = window.arguments[0];
var sjcl = NoteHandler.sjcl;
NoteHandler.getAccessToken();
decryptionDialog.noteHandler = NoteHandler;
decryptionDialog.sjcl = sjcl;
var currID = decryptionDialog.getID();
if(currID==""){
window.close();
return false;
}else{
http_request = new XMLHttpRequest();
http_request.open('Get', 'https://graph.facebook.com/'+currID+'/notes?access_token='+NoteHandler.token, false);
http_request.overrideMimeType("text/json");
http_request.send(null);
decryptionDialog.value = decryptionDialog.ResponseToArray(http_request.responseText);
....
しかしgetAccessToken()がまだアクセストークンを待っている間に問題がある、のonLoad() - メソッドが待って点灯しなくなります。したがって、要求が送信されている間は、NoteHandler.tokenはnullです。誰かがアイデアを持っています、なぜなら私は比較的新しいjavascriptだからです。
ありがとうございました!私は1つのfunktionを移動しなければならなかったが、今私は動作する!コールバックメソッドが何であるかわからない(私のように、10分前)、私はお勧めします:http://recurial.com/programming/understanding-callback-functions-in-javascript/ – Manu
フォローアップの質問:私別の場所で同じ手順をとる。ユーザーはxulダイアログを取得し、新しいダイアログを取得するためのボタンがあります。今私はコールバック関数でアクセストークンをキャッチしようとし、その後、パラメータとしてアクセストークンを持つダイアログを開きます。問題:checkDone()メソッドは1回だけ動作します。その後、前のダイアログを閉じる必要があります。しかし、これは私が欲しいものではありません!私は何を取りこぼしたか? oO – Manu