2016-10-29 20 views
1
FB.api('4', function (res) { 
    if(!res || res.error) { 
    console.log(!res ? 'error occurred' : res.error); 
    return; 
    } 
    console.log(res.id); 
    console.log(res.name); 
}); 

// viewed at http://localhost:8080 
app.get('/test', function(req, res) { 
    res.sendFile(path.join(__dirname + '/index.html')); 

}); 

Iveはこの小さなFB.api呼び出しを作成してデータを返します。 localhost:8080/testにアクセスするときにこのデータを表示したいのですが、どうすればいいですか?そんなことをする方法は何ですか?誰かが可能な書類を私に指摘することはできますか?ある関数から別の関数にresを渡すには?

+0

ネストコールのような'FB'から読み込まれた' FB.api'コールバックに 'app.get'と衝突し、' res'とvoilaに書き込みます)。また:http://stackoverflow.com/questions/29285735/express-js-execution-flow-using-callbacks – csharpfolk

+0

@csharpfolkまあありがとう!いいえCsharpはあなたのものを知っている!リンクもありがとう、お勧めの良いドキュメント? – AlCode

答えて

2

まずあなたがあなたのページにいくつかのJavaScriptを追加することができたindex.htmlの内側に続いて、この

app.get('/something', function(req, res) { 
    FB.api('4', function (result) { 
     if(!res || res.error) { 
      return res.send(500, 'error'); 
     } 

     res.send(result); 
    }); 
}); 

のように急行ルート内でごFB.api呼び出しを追加して、「localhostのコールするXHR作成:8080 /何かを「あなたが避けるために、 `` FBres`にres`の名前を変更する必要があります(app.get` ``内部FB.api`への

index.htmlを

<script type="text/javascript"> 
    var xhr = new XMLHttpRequest(); 
    xhr.open('GET', 'http://localhost:8080/something'); 
    xhr.onreadystatechange = function() { 
     if (xhr.readyState === 4) { 
      var data = xhr.responseText; 

      //Do whatever you want with this data. 
     } 
    } 
    xhr.send(); 
</script> 
+0

ありがとう、これは私のためにやった。あなたが推薦する良い文書はありますか? – AlCode

+0

私はあなたが必要とするドキュメンテーションの種類はわかりませんが、http://expressjs.com/を訪れることができます。彼らはXHRについてもっと知りたい場合にもapi用の確かなドキュメントを手に入れました。ドキュメントhttps ://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequestまた、この記事はhtml5rocks https://www.html5rocks.com/en/tutorials/file/xhr2/にあります。本当に涼しいです –

+0

ありがとう、thats私が探していたthats。 – AlCode

関連する問題