套接字或Ajax.我应该用什么
Sockets or Ajax. What should I use?
我想要什么
我想使用Nodejs创建一个登录脚本。目前我正在考虑使用套接字或ajax帖子。
我所拥有的
我已经安装了Nodejs,并使用了这段代码。
我尝试了什么
我从一篇简单的Ajax文章开始。我使用了jQuery,并序列化了表单。这很有效,但有时会有一些延迟或速度较慢。
所以我认为套接字可能是与服务器通信并返回客户端的更好方式。
现在我面临的问题是我不能再使用serialize()
了(该死的,我喜欢serialize()
函数)。
所以现在我必须在我的客户端中使用json,获得2个输入值(电子邮件和密码),创建一个名为obj
的对象,添加值并使用socket.emit('login', JSON.stringify(obj, null, 2))
在我的服务器中,我有
socket.on('login', function(data){
data = JSON.parse(data)
if(data.email === 'em@il.com' && data.password === 'secret')
// return true
// return false
})
现在的问题是,我无法让我的客户知道凭据是否正确。
我可以通过使用另一个emit
来做到这一点,但我认为这将是超负荷的。
我不能只使用return true
或socket.send(true)
吗?
有人有同样的问题吗?或者也许是我问题的解决方案?
谢谢!!
好吧,伙计,闻起来它不会是你从客户端调用的唯一函数。所以你应该开始设计你的API。
如果您从客户端发送JSON,那么从服务器最光荣的事情就是返回JSON。我会用socket.send.
基本的OK响应如下所示:
{ "Status" : true }
基本错误响应如下所示:
{ "Status" : false, "Message": "Login or password not valid" }
如果将来您需要将数据返回到客户端,那么可能会使用相同的基本实体,您只需要向其添加更多属性并在客户端中读取即可。
{ "Status" : true, Data: { /* data here */ } }
相关文章:
- 我什么时候应该把JSON分成更小的部分
- 我应该使用什么正则表达式来验证数字模式
- 如果 window.navigator.userAgent 被弃用,我应该改用什么
- 我应该在Google Api javascript中进行什么更改,以便它只能显示印度城市,而不能落后于州和印度
- 发现这个讨厌的代码,我想知道它有什么作用?我应该担心吗..
- 我什么时候应该在jQuery中使用$.fn.extend()
- 在表单提交将DOM的一部分替换为分部之后,我应该将ajax成功绑定到什么来使我的javascript工作
- Javascript:我应该在这里使用什么来实现我的价值(圆形、地板、天花板)
- 我应该在点击上放置什么事件
- 当我单击标记而不是删除它时,我应该做些什么来创建自定义菜单
- 我应该使用jQuery将页面相关的javascript代码放在Rails3.2中的什么位置
- 我应该使用什么模式在 Node/JavaScript 中制作监听机器人
- 我什么时候应该使用 icepick.merge 而不是 lodash.merge
- 我应该使用什么事件在 jQuery 中异步提交表单
- 我应该在JavaScript中将什么连接到子原型属性
- 我什么时候应该使用“this.x”与“var x”
- 我应该以什么顺序放置javascript文件,以便滑动器使用jQuery Mobile正确加载,以及我应该使用哪个页面事
- Javascript 我应该使用什么其他技巧来代替导出符号
- RequireJS - 我应该为 BaseURL 设置什么
- 开发 JavaScript - 我应该什么时候开始进行单元测试