PHP 要实现类似网页版微信扫描登录的功能,用什么方法比较好?

2015-09-18 08:37:37 +08:00
 dellch
一个项目想实现类似的功能,目前的想法用长连接(不用轮询)来实现,只需要扫描登录就行,有没有什么比较简单的方法?
网上找来一圈,有的说用 swoole ,有的说最好用 node.js ,感觉都比较复杂,有没有比较简单的办法呢,最好给出参考链接。谢谢~
还有,项目用的是 CI ,怎么集成进来?
4761 次点击
所在节点    PHP
21 条回复
orvice
2015-09-18 08:38:13 +08:00
websocket
ljbha007
2015-09-18 08:44:25 +08:00
jaguar
2015-09-18 08:45:35 +08:00
setinterval
honkew
2015-09-18 08:45:42 +08:00
最简单是 ajax 是吧
jugelizi
2015-09-18 08:58:14 +08:00
你看支付宝的 就是 ajax 定时
pein
2015-09-18 08:58:30 +08:00
原理上就 http 长连接、长轮询和 websocket 这几种,长连接和长轮询简单点,长连接其实就是把循环放到服务器上做。
dong3580
2015-09-18 09:09:31 +08:00
约定算法,加个 api 接口不就行了,区别只在于一个普通 api 是鼠标点击刷新之类的,一个是摄像头打开 api 触发。。。
dellch
2015-09-18 09:48:33 +08:00
@ljbha007 使用 socket.io 就要整合 node.js ,感觉有点麻烦。
@jugelizi 支付宝是 ajax 定时的?如果几百人同时, 1 秒一次服务器会不会 hold 不住?
google 到一个 phpwebsocket ,不知有没有人用过?
cevincheung
2015-09-18 09:52:22 +08:00
@dellch 二维码放到 redis , 60s 过期,定时。没问题。为啥每个程序员总以为自己每天都有几万亿的访客。
ljbha007
2015-09-18 10:22:09 +08:00
49300289
2015-09-18 11:15:58 +08:00
swoole 吧,你用 php 的话
shoaly
2015-09-18 13:06:43 +08:00
关注一个叫野狗的东西, 包装了 楼上说的 socket.io 所有的东西, 有 restful 接口, 这就是你想要的
dellch
2015-09-18 13:31:34 +08:00
@cevincheung 的确访问量不会那么大,方案可行。
http://elephant.io 和 swoole 觉复杂了一点。
野狗还是第一次听说,所以 google 了一下
不得不说一句, google 太快了,几分钟前的帖子已经索引了
iyaozhen
2015-09-18 13:50:17 +08:00
@cevincheung 「为啥每个程序员总以为自己每天都有几万亿的访客。」 233333

楼主你还是线上长轮询吧。上了再说
est
2015-09-18 14:05:00 +08:00
简单粗暴有效:轮训。
realpg
2015-09-18 15:42:21 +08:00
ajax 轮询 简单粗暴好用 只需要 PHP 即可实现。
imlewc
2015-09-18 17:25:43 +08:00
dai269619118
2015-09-18 17:41:21 +08:00
我项目也是 ci 写的
推送打算用 tornado 实现
如果就这么一个地方需要推送用轮询把
yield9tk
2015-09-18 18:01:09 +08:00
websocket
dellch
2015-09-18 21:02:52 +08:00
谢谢各位~准备先用长轮询
以后再考虑其他方式

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/221651

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX