源文档感悟
这个示例说明 uwsgi 依据response中是否X-Sendfile标头 来区分是否转发给sse或者websocket事务
这个sseapp.py文件主要是用来接收uwsgi转发过来的sse请求,向前端不断发送时间戳。这里有个坑是示例中的python是python2版本所以 print 需要改为 print(),并且最后的yield str(sessioin)要改为str(session).encode(),不然下面的js中将一直为pending状态,并且这个sseapp.py的uwsgi会报[ERROR] Unhandled object错误,因为不接收字符串,当然也不能直接去掉str(),因为这是一个object对象。。这里是坑。。我帮大家踩了
对官方嫌弃html (▽)
django中的url为subscribe 建议不要用subscribe/ 不然会301一下
其实不是“卸载” 原词 offload有转移的意思,然后注意html文件最好放到django中,用url访问,这样测试中可以不用解决跨域问题。这是一个uwsgi.ini文件用他来启动django就可以了。
最后的效果是不断打印时间戳,完成。其实django有官方的django-eventstream包,非常好用,但是需要用asgi去部署。
我们暂时都是uwsgi部署项目,考虑到时间成本,以后再换了。建议大家直接使用asgi去部署,这里有daphne,uvicorn等推荐。以后有机会再写。