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

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

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

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

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

    用Python3 + Django。

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

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

    独立方案,但是可以协同使用。
    hxtheone
        31
    hxtheone  
       May 13, 2015
    @vJianZhen 算是可替代的解决方案吧,基本上是前后端一手抓了,至于可不可以和python协同开发,我没有过这样的经验,不敢乱说
    gamexg
        32
    gamexg  
       May 13, 2015
    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
        33
    rayyang88  
       May 13, 2015
    node + websocket 或者 go + websocket
    vJianZhen
        34
    vJianZhen  
    OP
       May 13, 2015
    @xlrtx agar是什么?搜了没结果
    vJianZhen
        35
    vJianZhen  
    OP
       May 13, 2015
    @qw7692336 我看了一个websocket的教程,里面这样写的,我也没去求证
    那微信网页版用的哪个?
    vJianZhen
        36
    vJianZhen  
    OP
       May 13, 2015
    @quix 乍一看好炫啊!谢谢
    easynoder
        37
    easynoder  
       May 14, 2015
    @vJianZhen 代码已经留给公司了。。
    xlrtx
        38
    xlrtx  
       May 16, 2015
    @vJianZhen agar.io 一个网页游戏
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1043 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 85ms · UTC 23:31 · PVG 07:31 · LAX 16:31 · JFK 19:31
    ♥ Do have faith in what you're doing.