作者amigcamel (阿吉amig)
看板Web_Design
标题[问题] js/jquery 接server 文字串流
时间Fri Nov 20 14:17:39 2015
大家好
小鲁新手请见谅
可能鲁到标题都说不清
我直接说明:
[环境]
前端:js/jquery
後端:django
[情境]
Ajax送出指令
django server 接收到以後
後端的Python开始跑一段程式,且将log以stream的方式输出到某个file
[需求]
我想把这些输出的log即时反应在页面上
让使用者知道目前程式执行的状况
[问题]
要怎麽实作?
1. XMLHttpRequest.js?
我从StackOverflow查到这个解答(连结:
https://goo.gl/9tNomn)
但说实在有看没有,还是说这个不是我要问的?
2. 用WebSocket?
但这好像会牵涉到後端server 是否为synchronous server的样子
我只知道他是常常被拿来作为网路聊天室实作的技术
我想到最笨的方法就是一直发request去接收资料
但我觉得应该有更好的办法
但目前最大问题就是卡在
1. 前端不知道怎麽实作
2. 後端也不知道怎麽配合
不知道各位先进大大
可否迷津指点一下
有实例可以提供最好
提供关键字让我去作功课也可以
谢谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.220.233.161
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Web_Design/M.1448000262.A.5D4.html
1F:推 ian90911: 那Node.js socket.io呢 11/20 15:11
谢谢,不过Node.js可能不考虑(因为我不会><)
※ 编辑: amigcamel (61.220.233.161), 11/20/2015 15:20:02
2F:→ mmis1000: 要用node.js的话,不用socketio阿 11/20 18:50
3F:→ mmis1000: 而且超乎你想像的简单,不超过100code 11/20 18:51
6F:→ Hevak: 楼上的例子不就是用socket.io吗@@ 11/20 19:23
7F:→ mmis1000: 那是直接把程式输出送进tcp socket里... 11/20 19:27
8F:→ mmis1000: socket.io那一段是清垃圾没清到而已 11/20 19:27
9F:推 syclin: Websocket 应该是您的最佳夥伴 :) 11/20 20:24
10F:→ mmis1000: 你甚至可以直接curl那个网址,他会直接显示在console上 11/20 20:43
11F:推 pptinmylife: 用nodejs 11/20 21:11
12F:→ mmis1000: node.js的child process能让你轻松串任何指令 11/20 21:18
13F:→ mmis1000: 而他的evented io可以简单做到串流的重导向 11/20 21:19
14F:→ mmis1000: 不考虑code品质的话,学起来相当简单,就连国中生都能 11/20 21:20
15F:→ mmis1000: 在一个晚上做出简单的irc bot之类的小应用 11/20 21:20
16F:推 Hevak: 原来如此XD 11/21 01:39
谢谢各位
透过关键字
我找到了我要的答案:
gevent-socketio (
https://github.com/abourget/gevent-socketio)
server方面除了支援Django外
也支援其他WSGI-based的web frameworks,如Flask, web2py, Pylons
※ 编辑: amigcamel (1.34.118.221), 11/21/2015 02:58:36
17F:→ a110482: django的websocket你搜寻dwebsocket,还蛮方便的 11/22 21:51
谢谢!真的满方便的!
※ 编辑: amigcamel (61.220.233.159), 11/23/2015 14:17:57