1

我的任务是创建一个可以与移动平台上的聊天应用程序通信的 ROR 应用程序。那个聊天应用叫做“微信”。您可以向其他微信用户发送即时消息。我的工作是创建一个可以

  1. 获取微信消息
  2. 在微信上留言。

这是我目前得到的所有信息。听起来在这个初始阶段它现在只能是一个基于网络的应用程序。我不知道,也许这对你们专家来说是一件很快的事情,但对于像我这样的新手来说,这听起来是一项艰巨的任务:) 我只有创建基本 ROR 应用程序的经验。也许您的专家可以概述如何做到这一点的一般步骤。可能是一个展示其他人如何完成类似项目的操作文档。只是想先得到一些想法。如果我得到它们,我将发布有关该项目的更多详细信息

谢谢

4

3 回答 3

1

该任务将与微信 API 进行大量交互,以便向其服务器执行 GET 请求和 POST 请求。有趣的是,他们没有任何关于如何使用 Web 应用程序(仅限移动设备)执行此操作的文档,因此需要一些试验和错误(请参阅文档)。

通过阅读他们的文档,您似乎有两个基本的选择来解决这个问题。一种是在没有大数据库的情况下制作移动应用程序,而是在微信api上提供一个小层。这意味着每次用户访问您的 Web 应用程序时,在您的应用程序最多可以为他们进行 api 调用 2 小时之后,他们必须授予您的应用程序权限(客户端授权)。在这种情况下,您必须将他们的令牌和用户信息存储为 cookie 或本地变量,并使用它来发布和获取来自该用户的消息。

第二种方法是创建一个完整的应用程序,您将在其中注册用户和一个数据库来存储他们的信息以及应用程序提供的自定义授权代码,让您访问一年(使用访问令牌和刷新令牌它似乎)。如果您有设计或处理用户的经验,这可能是存储方面更简单的方法,但访问令牌可能会提供障碍。

一旦您拥有所有必要的令牌来获得为用户发布和获取消息的权限,那么就可以从您的 Rails 应用程序中调用它们。这通常是在 ruby​​ 包装器的帮助下处理的,但看起来微信不存在 ruby​​ 包装器。相反,您可以使用像Faraday这样的 gem来“轻松”进行 api 调用以通过 url 获取和发布。有趣的是,微信 API 似乎没有“消息”,而是“媒体”、“时间轴”和“时刻”。我的猜测是“时刻”是最接近的。

也可能是你所说的“微信”和这个不一样,这很有意义。希望这有助于作为一个简短的大纲。

另外,请在此处查看他们的一些其他 api 文档,例如此文档。

于 2013-07-12T02:38:43.907 回答
1

如果你喜欢,我不认为微信或微信有足够的 API 让你从中推送和拉取消息。正如您在他们的文档中看到的那样,尚不支持 Web App。

此外,如果您想创建一个实时聊天网络应用程序,Ruby on Rails 不是一个好的选择。因为它缺乏流媒体功能。Node.js 更适合流式传输内容并将数据从服务器推送到客户端。

于 2013-07-12T04:27:48.870 回答
1

我想你正在寻找一个官方帐户。看看这里的文档” http://admin.wechat.com/wiki/index.php?title=Guide_for_Message_API

那就去http://admin.wechat.com/debug/sandbox试试吧。因为您可以在那里获得完整的 API 访问权限

请注意,您的手机号码必须采用以下格式:+27723334444 如果您的号码是 0723334444

于 2014-04-11T02:21:06.473 回答