我正在开发简单的网络应用程序,它要求 Facebook 访问令牌并检索登录用户的“发布”数据。
单击“登录”后,它会调用 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('/')
});
});
任何建议将不胜感激。感谢您的时间。