杂七杂八问题以及解决方案记录
工作,日常学习,阅读文章等过程中的问题记录,包括解决方案(如果有)或者相关探索。
相关:
- 框架和库的使用问题
- 浏览器相关问题(如调试)
- 系统相关问题(如兼容性问题)
- 各种工具(如 git)问题
注意:
由于水平有限,不保证 100% 正确,欢迎讨论,共同进步。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
5. shebang line(
#!
) 与node.js工具写脚本已经是node.js的一个主流功能,比如
gulp-cli
,webpack-cli
等等。今天用一个小工具突然报了一个莫名其妙的错误,错误原因比较有意思,这里记录下。一般情况下,脚本都是上面的格式,表示用node去执行下面的js代码。其中第一行叫shebang line,指明用来执行脚本的解释程序。
而使用的小工具报了这样的错误信息:
一番排查,问题出在shebang line:
是不是看出什么了?对的,问题就出在
r
上。unix/linux 下,换行符是
n
,于是,有问题的shebang line被解析后,env是noder
,而不是node
。所以系统根本没法找到一个叫noder
的程序来执行这段脚本...最后问了工具的开发者,他在windows上开发,
4. html中的
是什么鬼??工作中需要分割项目,从原来代码(windows系统中写的)中拷贝了页面到新仓库(Mac开发),浏览器中浏览页面,Elements面板发现head中的内容漏到body里了,然后body内第一个字符就是
!!资料:
是 zero width no-break space ,windows用来做 byte order marks。果然是windows的锅。除资料里的方法外,可以这样去除65279:
3. windows上
0.0.0.0:3000
无法访问nodejs server跑在
0.0.0.0
,让同事本机部署时,0.0.0.0:3000
竟然无法访问,报错**ERR_ADDRESS_INVALID
**。解决:
原来windows上
0.0.0.0
被当作无效/未知的域名,服务器跑在0.0.0.0:3000
后,其实可以localhost:3000
访问ip:3000
访问2.
path
的API在windows平台的行为unix/linux/osx下,
path
的API的执行结果都是简明一致的。由于windows的盘符概念,这些API返回的结果则需要特别注意了。请记住,windows下这些API的执行结果很多时候不符合预期。
然后在操作路径前使用
path.normalize
可能是比较好的行为。1. Koa之
context.is
context.is
跟我们期待的行为很不一样。我们以为只要。 Naive!!!content-type
符合,那么这个方法就要返回正确的typecontext.is
的内部实现是jshttp/type-is
这个库,查看源码可知:在代码检查
content-type
前,已经因为request没有body被打断了。更明确一点,所有的GET
请求context.is
一律返回null
。呵呵...
为什么这么处理?查到的一个比较官方的解释是 koajs/koa#440
并且官方推荐
context.accepts
这个API。结论: 怎么说呢,限制必须有body好像也不是完全没道理,不过还是 呵呵 。