百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>JS教程> Express的HTTP/1.1 open unknown错误问题
分享文章到:

Express的HTTP/1.1 open unknown错误问题

发布时间:01/15 来源: 浏览: 关键词:
本文章来给大家介绍关于Express的HTTP/1.1 open unknown错误问题各位同学可进入参考。
架构是这样的:NodeJS+Express,使用EJS作为模板。
错误是这样的:
 代码如下
HTTP/1.1 open unknown
X-Powered-By: Express
Content-Type: text/html; charset=utf-8
Content-Length: 11874
Set-Cookie: connect.sid=x4iNL4p1zGLt5mhMphHtiDFh.WVVHofhb3GyrkXnOyTQbe1SgGC2AEydsHCZiLGSB%2FY0; path=/; expires=Thu, 21 Jun 2012 06:54:36 GMT; httpOnly
Connection: keep-alive
在渲染一些页面的时候,Express会放以上的文字在HTML文档正文前面,一些浏览器(Chrome,IE)会忽略这些文字,看起来正常。还有的浏览器(Opera),会继续等待服务器的返回,表现为页面已经渲染,但是JavaScript并不执行,一直在Loading直至超时,按停止键能够正常加载完成页面功能。另一些浏览器(主要是个版本Safari)会直接认为文档是纯文本,从而显示源代码,如图所示。
也许是Express用户群比较小的原因,我一直没能找到这个问题的原因。经过艰苦卓绝的debug,终于找到了原因。以下是罪魁祸首。
请注意,在192行,我从URL里读取了名为status的参数,原封不动地使用名称status作为模板参数传给了EJS模板。在EJS模板中,这样使用了:
悲剧就此发生。改成这样:
并在EJS中避免使用<%= status %>,改用<%= docstatus %>,问题马上解决。我尚不太明白错误的机制,我猜EJS的参数中,status变量可能保留另有作用了。祝你早日解决HTTP/1.1 open unknown的问题
打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有4人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板