新手问题 rails 有没有插件可以给微信或者微博发信息的功能?

topswim · 2013年01月10日 · 最后由 ruby_sky 回复于 2014年02月20日 · 6824 次阅读

rails 有没有插件可以给微信或者微博发信息的功能?

你是指接入微信平台做机器人自动回复还是别的什么?

现在 微信 腾讯只开放了 微信公众平台

#1 楼 @alucardpj 我是想通过我的 Web 应用通过一个微信帐号向外发信息!

@topswim,你有微信吧?你在微信上搜公共帐号 zuzher,这个是我们做的,就是 web 应用能够在微信上发送消息,当然我们实现的是一个搜索的功能,你可以看看。

#6 楼 @naitnix 我前两天也在自己写 rails 后台对接公众平台接口,现在能收到微信发过来的 xml 消息,也按照规范回复了,但是手机端总是收不到回复结果,是不是有什么要特别注意的地方?

@alucardpj ,按照那个返回的格式写就可以了,没有啥特别需要主意的地方,只要你返回的格式跟给出的格式一样就可以了,那些节点的名称都是固定的,不能自己随意起的,还有就是你在 render 的时候需要 layout => false 一下:render :text => "#{@datas}", :layout => false

#8 楼 @naitnix 我是用 grape gem 写的 api 接口,用抓包工具也抓了结果,似乎没啥问题。不行我就用一般的 controller/action 来重写一遍试试看,谢了。

哈,我当初也考虑用 grape 了,刚好跟 iphone 的 api 一样,但是我觉得没那个必要,所以就直接 controller 了: builder = Builder::XmlMarkup.new @datas = builder.xml do |b| ......... end

然后 render @datas

#3 楼 @huacnlee 意思是关联了 QQ 就以为着关联了微信吗?

#11 楼 @linsk 他不是问发微博么?oauth_china 就可以,但是微信我就不知道了

#1 楼 @alucardpj 你好我这个 WEBAPP 是在内网!URL:怎么办啊?

#13 楼 @topswim 你是说微信还是微博?两个不一样的,微信是你写接口让微信调用,微博是你调用微博的接口,如果是微信,你的接口一定要是有公网访问地址的,微博的话只要你能访问到微博的接口就行了

#1 楼 @alucardpj 在内网,但是可以访问外网,所以没有对外的 URL。郁闷。

#15 楼 @topswim 我还是不太明白你的具体的需求是什么,不过按照你给的条件,也只能动动微博对接的脑筋了,微信就没辙了。

#14 楼 @alucardpj 谢谢,我是想用微信。

#16 楼 @alucardpj 能把你的 QQ 发我邮箱([email protected])吗?我对 ROR 很生还有很多问题想问。

#7 楼 @alucardpj 我也是用 rails 搭的一个简单的后台,就写了一个 controller,但是存在个问题,在绑定 url 和 Token 的时候,一直提示我"你的服务器没有正确响应 Token 验证,请阅读消息接口使用指南"。求解答!

#20 楼 @lixm 你是不是在实现 get 方法校验 token 的时候没处理好?论坛上 @edokeh 同学做了简单的 rails controller 实现微信接口的功能,你可以参考一下 代码在这里https://github.com/edokeh/test-weixin 文章记录在这里 http://chaoskeh.com/blog/create-weixin-api-by-rails.html

#21 楼 @alucardpj 奇怪,用来@edokeh 同学的代码也出现同样的现象。我也是按照建议把代码托管到了 cloudfoundry.com 上,但仍然提示"你的服务器没有正确响应 Token 验证,请阅读消息接口使用指南"。不知兄台的方法是否与@edokeh 同学的类似?

#22 楼 @lixm 方便把你的代码放一份到 github 上吗?我部署到 CF 上看看

#22 楼 @lixm 端口是 80 吗?

#23 楼 @edokeh https://github.com/edokeh/test-weixin@user2,我就是用 同学的代码测试的。你帮忙试试

#23 楼 @edokeh 就是用你的代码测试的,你之前是部署在哪的,我放到 cloudfoundry 上就是不行啊

#23 楼 @edokeh baguo.cloudfoundry.com

#28 楼 @lixm 呃。。。那你试试我这个呢? weixinechotest.cloudfoundry.com token 是 echotest

#29 楼 @edokeh 也是提示“你的服务器没有正确响应 Token 验证,请阅读消息接口使用指南”。

#29 楼 @edokeh 你之前是在自己服务器上测试的?

#31 楼 @lixm 对啊,我刚才试了一下,还是好的啊

#31 楼 @lixm 对了,你的 URL 填的什么? 应该是这个,带上路径的 http://weixinechotest.cloudfoundry.com/weixin

#33 楼 @edokeh 这样啊,难怪。weixin 是文件夹的名字吗?

#33 楼 @edokeh 非常感谢,现在完全可以了。

#35 楼 @lixm 是那个 controller 对应的 route url

#33 楼 @edokeh 我用的就是你托管的代码,就是修改了数据库链接,可以成为开发者,但用手机发微信消息,不能得到回应

需要 登录 后方可回复, 如果你还没有账号请 注册新账号