• 请不要在回答技术问题时复制粘贴 AI 生成的内容
vJianZhen
V2EX  ›  程序员

想写一个网页聊天程序,需要哪些知识?

  •  1
     
  •   vJianZhen · May 12, 2015 · 6596 views
    This topic created in 4192 days ago, the information mentioned may be changed or developed.

    相当于弄一个网页版的微信,但是当然功能没那么强大,现在想的就是把它实现了,细节以后再抛光。

    那特别需要哪些网络编程的知识吗?
    有没有一个相对规范的工作流程?

    用Python3 + Django。

    38 replies  •  2015-05-16 20:27:57 +08:00
    hellosnow
    hellosnow
    May 12, 2015 via Android
    1
    推荐使用websocket
    shuiniushushu
    shuiniushushu
    May 12, 2015
    2
    websocket+1
    vJianZhen
    vJianZhen
    OP
    May 12, 2015
    3
    @hellosnow
    @shuiniushushu

    这个词我第一次听。。。谢谢你们给的启发。
    刚才搜了一下,好似 微博私信,WebQQ都是用它建立起来的,真的很强大!
    谢谢!
    Axurez
    Axurez
    May 12, 2015
    4
    timothyye
    timothyye
    May 12, 2015
    5
    nodejs+websocket
    a6377508
    a6377508
    May 12, 2015 via Android
    6
    websocket +1,网上很多例子
    senghoo
    senghoo
    May 13, 2015 via iPad
    7
    Websocket + tornado . Tornado官方就有个demo
    robinWu
    robinWu
    May 13, 2015
    8
    websocket+1
    robinWu
    robinWu
    May 13, 2015
    9
    websoket+1
    hellomsg
    hellomsg
    May 13, 2015
    10
    websocket(html5)
    或socket.io(没用过)
    或长轮训
    flowfire
    flowfire
    May 13, 2015
    11
    websocket +1 ,前两天还在研究呢,总算是测试通过了。。。
    http://bingkubei.tk/?p=76
    这边有php server的源码。。。你可以去看看
    clino
    clino
    May 13, 2015 via Android
    12
    这个我记得是 uliweb 版 websocket chatroom 的例子
    clino
    clino
    May 13, 2015 via Android
    13
    链接还没附上就发了 https://github.com/limodou/chatroom
    mtmobile
    mtmobile
    May 13, 2015 via Android
    14
    环信
    mikumikumoe
    mikumikumoe
    May 13, 2015
    15
    @flowfire beikubei 23333
    easynoder
    easynoder
    May 13, 2015
    16
    websocket + nodejs,之前做过,开发效率挺高的
    vJianZhen
    vJianZhen
    OP
    May 13, 2015
    17
    @senghoo 可我学的是django。。
    vJianZhen
    vJianZhen
    OP
    May 13, 2015
    18
    @easynoder 请问有demo页吗?
    vJianZhen
    vJianZhen
    OP
    May 13, 2015
    19
    @mtmobile 想自己写
    isayme
    isayme
    May 13, 2015
    20
    原理就是楼上提到的WebSocket, NodeJS里的socket.io是用于写服务端的.
    不过不想写服务端的话可以用LeanCloud的服务, 他们有实时通信SDK: https://leancloud.cn/docs/js_realtime.html
    我写的简单的例子: http://onchat.isayme.org/
    单页面, Backbone+RequireJS实现, 源码: https://github.com/isayme/online-chat
    xlrtx
    xlrtx
    May 13, 2015
    21
    agar就是用websocket写的
    crabRunning
    crabRunning
    May 13, 2015 via Android
    22
    swoole,webIMso easy
    kzzhr
    kzzhr
    May 13, 2015 via Android
    23
    安全过滤,这个非常重要。
    不好一个聊天室的人全要完蛋!
    hxtheone
    hxtheone
    May 13, 2015
    24
    nodejs + socket.io,这酸爽,谁用谁知道
    vJianZhen
    vJianZhen
    OP
    May 13, 2015
    25
    @kzzhr 安全过滤?具体讲讲。
    vJianZhen
    vJianZhen
    OP
    May 13, 2015
    26
    @hxtheone 这两样和django+python是协同的关系,还是可替代的解决方案?
    quix
    quix
    May 13, 2015
    27
    配置下 rabbitmq 玩玩
    qw7692336
    qw7692336
    May 13, 2015
    28
    @vJianZhen webQQ并不是,webQQ是通过轮询实现的
    quix
    quix
    May 13, 2015
    29
    有一个 stack 楼主可以看看 http://crossbar.io/
    gamexg
    gamexg
    May 13, 2015 via Android
    30
    这两样和django+python是协同的关系,还是可替代的解决方案?

    独立方案,但是可以协同使用。
    hxtheone
    hxtheone
    May 13, 2015
    31
    @vJianZhen 算是可替代的解决方案吧,基本上是前后端一手抓了,至于可不可以和python协同开发,我没有过这样的经验,不敢乱说
    gamexg
    gamexg
    May 13, 2015
    32
    python 向 socket.io 发消息可以用:

    https://github.com/ziyasal/socket.io-python-emitter
    使用官方的接口,但是需要 redis 。

    https://github.com/invisibleroads/socketIO-client
    socket.io python客户端库 无需 redis ,我记得还可以接受消息。

    socket.io 向 django 发消息:

    https://github.com/danwrong/restler
    REST client library for node.js
    rayyang88
    rayyang88
    May 13, 2015
    33
    node + websocket 或者 go + websocket
    vJianZhen
    vJianZhen
    OP
    May 13, 2015
    34
    @xlrtx agar是什么?搜了没结果
    vJianZhen
    vJianZhen
    OP
    May 13, 2015
    35
    @qw7692336 我看了一个websocket的教程,里面这样写的,我也没去求证
    那微信网页版用的哪个?
    vJianZhen
    vJianZhen
    OP
    May 13, 2015
    36
    @quix 乍一看好炫啊!谢谢
    easynoder
    easynoder
    May 14, 2015
    37
    @vJianZhen 代码已经留给公司了。。
    xlrtx
    xlrtx
    May 16, 2015
    38
    @vJianZhen agar.io 一个网页游戏
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2922 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 66ms · UTC 12:33 · PVG 20:33 · LAX 04:33 · JFK 07:33
    ♥ Do have faith in what you're doing.