Tag: facebook

Facebook的使者bot错误“TypeError:不能读取未定义的属性”0“。

我正在尝试使用NodeJS,Express和Heroku服务器来创build一个Facebook chatbot。 我在Heroku上创build了我的webhook,并通过Facebook进行了validation和保存。 然后我运行这个代码来连接我的webhook到Facebook。 curl -ik -X POST "https://graph.facebook.com/v2.6/me/subscribed_apps?access_token=<token>" 这个返回{success:true}。 那么我开始添加代码来回复传入的消息,但我似乎无法得到它发送的信息。 每当我发送消息,我都没有回复。 一切都连接和运行,但这个错误我得到“TypeError:不能读取未定义的属性'0'是因为我没有得到从Facebook发送到我的webhook的消息信息。 这是空的代码行: messaging_events = req.body.entry[0].messaging; 这是我的完整代码: var express = require('express'); var bodyParser = require('body-parser'); var request = require("request") var app = express(); var port = process.env.PORT || 3000; // body parser middleware app.use(bodyParser.urlencoded({ extended: true })); app.get('/', function (req, res) { if (req.query['hub.verify_token'] […]

如何在本地存储用户信息,当他使用Facebook Messenger的聊天机器人?

我跟着Facebook的文档,并设置我的Messenger软件。 它正常工作,只是我在使用它,但我不知道如何在本地创buildvariables和存储信息,以便我可以获得有关每个用户的个人信息。 例如。 如果我要求他们input他们的电话号码,我应该如何保存它,以便在新用户来电时input他的号码(如果variables是全局声明的话),也不会被覆盖。稍后使用它。 我使用了Node JS,并遵循了他们在文档中提到的步骤。

正确的方式将Facebook令牌从客户端发送到服务器

我不知道如何将用户的fb令牌从客户端传送到我的服务器。 我目前的做法如下: 用户打开网页并login到FB; 令牌从FB获得; 将用户客户端redirect到/ api /:令牌 使用express + node + app.get("/api/:token")来获取服务器上的令牌 然而,这看起来并不安全,因为当我redirect用户时,他的令牌在浏览器上清晰可见,任何人都可以尝试猜测令牌来冒充其他用户。 问:我如何安全地将用户的fb令牌从客户端发送到我的服务器? 我应该使用ajax文章吗? 感谢您的帮助! :d

Facebook护照策略返回500错误

我试图做一个login或login用户使用passport.js facebook战略连接他们的帐户与Facebook,并保存他们的profile photo, id, gender, timeline cover and token根据userSchema(在user.js模型如下所示。 我尝试了很多组合,但仍然从Facebook获得500错误,或者如果显示Facebook身份validation,Facebook无法返回(代码组合,我试过)并保存该对象。 PS : 我在Facebook上input了正确的callbackurl PPS:请参阅我的更新routes.js和更新下面的passport.js 。 这是我的routes.js文件: app.get('/auth/connect/facebook', passport.authenticate('facebook-connect', { authType: 'rerequest', scope: ['id', 'cover', 'gender', 'photos'] })); app.get('/auth/connect/facebook/callback', passport.authenticate('facebook-connect', { successRedirect: '/profile/configure', failureRedirect: '/profile/congigure' // failureFlash: true })); 我的facebook-connect的passport.js文件: passport.use('facebook-connect', new FacebookStrategy({ clientID: configAuth.facebookAuth.clientID, clientSecret: configAuth.facebookAuth.clientSecret, callbackURL: configAuth.facebookAuth.callbackURL, profileFields: ['id', 'cover', 'gender', 'photos'], enableProof: true […]

在meteor应用程序与Facebook连接logincallback

我如何订阅一个callbackMeteor.loginWithFacebook()或Meteor.loginWithGoogle()方法? 如果没有这样的事情,什么是一个很好的解决方法?

寻找更新的节点Facebook模板

所以我一直在网上寻找一个好的node.js的Facebook模板,但我真的可以find这个https://github.com/heroku/facebook-template-nodejs 。 这是体面的,但它使用快车2.4.6和节点0.6.x. 我想跟上标准,在express 3.x和node 0.8.x下工作,但是如果我更新package.json我不能再使用与heroku模板一起使用的dynamic助手,主要是这些function: app.dynamicHelpers({ 'host': function(req, res) { return req.headers['host']; }, 'scheme': function(req, res) { return req.headers['x-forwarded-proto'] || 'http'; }, 'url': function(req, res) { return function(path) { return app.dynamicViewHelpers.scheme(req, res) + app.dynamicViewHelpers.url_no_scheme(req, res)(path); } }, 'url_no_scheme': function(req, res) { return function(path) { return '://' + app.dynamicViewHelpers.host(req, res) + (path || ''); } […]

phantomjs 1.9.19的来源在哪里?

我试图为armv8-a处理器构build幻影版本1.9.19 。 但是,当我检出项目的github页面时 ,我发现最新的1.9.x版本是1.9.8 。 我在哪里可以find1.9.19的来源? 背景 版本1.9.19是facebooks osquery所必需的。 由于它不是预先构build的arm我不得不手动构build它和它的依赖关系。 目前它与info phantomjs@1.9.19 Failed to exec install script中断info phantomjs@1.9.19 Failed to exec install script 。

如何将一个node.js webhook连接到我的Facebook应用程序的messenger API?

我无法将我的node.js服务器作为一个messenger Web钩子链接到我的Facebook应用程序。 如果我尝试在'/webhook'调用中validation请求,Facebook在尝试validation并保存Web钩子时给我一个未find错误的页面。 如果将代码放在'/'调用中,即调用app.get('/',…) ,则在保存Web钩子时出现内部服务器错误。 我的应用程序托pipe在Heroku上。 在检查英雄日志时,我看到这个错误。 参考错误: 集线器没有定义 它指向这一行: res.send(hub.query['hub.challenge']) 我的代码是: var express = require('express') var bodyParser = require('body-parser') var request = require('request') //the imports app = express() app.set('port', (process.env.PORT || 5000)) app.use(bodyParser.urlencoded({extended: false})) // Process application/json app.use(bodyParser.json()) app.get('/',function(req,res){ if (req.query['hub.verify_token'] === 'my_voice_is_my_password_verify_me') { res.send(hub.query['hub.challenge']) } res.send('wrong token,error') }) app.get('/webhook',function(req,res){ if (req.query['hub.verify_token'] === 'my_voice_is_my_password_verify_me') […]

Node.js事件当Facebook页面发布

我正在使用Node.jsbuild立一个网站,涉及从一个公共Facebook页面的post。 我目前有服务器每隔n小时从Facebook更新我的sqlite3数据库,这工作正常,但我想知道是否有一些方法,我可以设置一个事件,调用更新function,每当页面发表post? 这意味着该网站始终与网页保持同步,并且不会有等到下一次更新时间的延迟

meteor不能访问个人资料图片

我是新来的meteor,我试图得到当前login用户的照片。 我尝试了很多方法,但是这个感觉就像应该工作: 这是在索引的js: Template.user_loggedout.events({ "click #login" : function(e, t){ Meteor.loginWithFacebook({ }) } }) 所以它基本上只是用facebooklogin。 authentication到此为止是成功的。 现在在服务器端,我创build用户时尝试了很多方法来获取图片,但是这个看起来是最干净和最简单的: Accounts.onCreateUser(function(options, user) { if (options.profile) { options.profile.picture = "http://graph.facebook.com/" + user.services.facebook.id + "/picture/?type=large"; user.profile = options.profile; } return user; }); 我也尝试过谷歌(完全实施谷歌login): user.profile.profile_picture = user.services.google.picture; 在我看来,我只是这么称呼它: <img src="currentUser.profile.picture" 事情是不pipe我尝试哪种方式,我打电话给这个破碎的链接图像: 我敢肯定,我是一个明显的举措,但我真的不知道我的电话有什么问题。 难道我做错了什么?