-2

Facebook アクセス トークンを要求し、ログイン ユーザーの「投稿」データを取得する単純な Web アプリを開発しています。

「ログイン」をクリックした後、FB.api を呼び出してユーザーの投稿を取得し、javascript で innerHTML を使用してユーザー ステータスを更新します。

<div id="fb-root"></div>
<div id="user-info"></div>
<div id="user-email"></div>
<div id="user-status" name="post"></div>
<button id="fb-auth">Login</button>

私の目標は、これらの更新されたデータを mongodb に保持することです。

私が試したのは、投稿が取得されたときにフォームを強制的に送信し、「name="post"」でデータを渡すことですが、これによりページが再度更新され、値が未定義と表示されます。

Javascript:

FB.api('/me/posts', { limit: 100 }, function(response) {
            var userStatus = document.getElementById('user-status');
            for (var i=0, l=response.data.length; i<l; i++) {
              var post = response.data[i];
              if (post.message) {
                userStatus.innerHTML = userStatus.innerHTML + ' ' + post.message ;

                var form = document.createElement('form');
                form.setAttribute('method', 'post');
                form.style.display = 'hidden';
                document.body.appendChild(form);
                form.submit();

              } else if (post.attachment && post.attachment.name) {
                alert('Attachment: ' + post.attachment.name);
              }
            }             
          });

app.js(req.param('post') は定義されていないため、mongodb は未定義のデータを挿入します):

app.post('/', function(req, res){
  postProvider.save({
    posts: req.param('post')
  }, function(error, docs){
    res.redirect('/')
  });
});

どんなアドバイスでも大歓迎です。お時間をいただきありがとうございます。

4

1 に答える 1

0

フォームデータを取得するには、次を使用する必要があります。

req.body.post
于 2012-06-08T12:47:10.630 に答える