android - 将桌面和移动客户端连接到 Django 和 Sails MVC webframeworks

标签 android django socket.io sails.js sails.io.js

我想使用 sails.js 构建一个 MVC 网络应用程序。
我还想要一个移动应用桌面客户端连接我的网络应用。为了连接移动客户端,我想使用socket.io,因为它提供了实时功能。 我应该如何将客户端连接到服务器?

我尝试了一个socket 连接 从 android 客户端 到我的 sails 应用程序中的一个 routes 并且我得到了一个错误提示连接没有 cookie。

我记得过去,当我想将我的桌面客户端连接到我的Django应用程序时,我得到了一个错误,说没有csrf时无法POST。

所以我的问题是什么是正确的方法? 我应该发送 cookie 到我的移动应用程序吗?我不认为 cookie 是执行此操作的干净方式。

我应该使用什么协议(protocol)? Telegram 使用 MTProto。我应该实现类似的东西吗?

在 MVC 网络框架中,我应该监听处理来自移动桌面<的连接/strong> 客户?

对于我的应用,想象一个在线商店也具有社交网络功能并且用户可以通过他们的手机对商店商品发表评论 客户端。

最佳答案

首先,MTProto 是一个加密协议(protocol),所以我不确定您是否真的需要实现这样的东西。

如果服务器应用程序实现 REST 服务,我认为 coockie 是多余的。 默认情况下,Django POST 表单处理程序正在等待 csrf,但它可以被禁用或在没有 cookie 的情况下实现(使用额外的后参数)。

据我了解,您正在尝试为您的服务实现 API。移动应用程序通常使用 API(通常是 REST API)。我认为阅读几篇关于 REST API 的文章会对您有所帮助(您可以从这里开始:http://www.restapitutorial.com/lessons/whatisrest.html)

接下来您可以搜索有关使用您的框架实现 REST API 的文章(也许这个答案会对您有所帮助 http://www.restapitutorial.com/lessons/whatisrest.html)。

简短的解释:您需要一组服务器方法,它们将是 API 方法。例如/users url 的 GET 方法应该返回一个用户列表。 POST 到/users 应该创建新用户。等等。而您的应用程序只是向这些发送或接收数据的 url 发出请求。您可以通过加密和解密所有传输的数据来进行加密。但是您可以使用现有的协议(protocol)之一,而不必实现自己发明的协议(protocol)。

关于android - 将桌面和移动客户端连接到 Django 和 Sails MVC webframeworks,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30667829/

相关文章:

python - Pycharm 设置 Mysql 数据库驱动

python - 访问相关对象的正确方法

python - 为什么我不能在 Django 中导入用户模型?

android - 获取从 fragment 到 Activity 的变量引用

android - 无法使用适用于 Android 的 aSmack 库创建多用户聊天 (MUC) 室 : "packet.DefaultPacketExtension cannot be cast to packet.MUCUser"

node.js - nodejs 集群 - socket.io-emitter 将数据发送到特定客户端

javascript - 在另一个 JS 文件中加载 JavaScript 文件

android - 如何在 Android Activity 之间共享 socket.io 连接?

android - AlarmManager 不会触发未决 Intent

java - 如何使用 DragEvent 将图像放置在线性布局中