[Node.js]在windows下不得不防的小错误
2014-05-10 14:41
435 查看
TypeError: Arguments to path.join must be strings at f (path.js:204:15) at Object.filter (native) at exports.join (path.js:209:40) at exports.send (E:\nodejs\demo\socket.io-express\node_modules\express\node_modules\connect\lib\middleware\static.js:129:20) at ServerResponse.res.sendfile (E:\nodejs\demo\socket.io-express\node_modules\express\lib\response.js:186:3) at io.sockets.on.socket.emit.text (E:\nodejs\demo\socket.io-express\app.js:8:6) at callbacks (E:\nodejs\demo\socket.io-express\node_modules\express\lib\router\index.js:272:11) at param (E:\nodejs\demo\socket.io-express\node_modules\express\lib\router\index.js:246:11) at pass (E:\nodejs\demo\socket.io-express\node_modules\express\lib\router\index.js:253:5) at Router._dispatch (E:\nodejs\demo\socket.io- express\node_modules\express\lib\router\index.js:280:5)
Node.js中的两个模块Socket.io 和Express做整合的时候出现了以下的错误:
var express = require('express'); var app = module.exports = express.createServer(), io = require('socket.io').listen(app); app.listen(3000); app.get('/', function(req, res){ res.sendfile(__dirname + '/index.html'); }); io.sockets.on('connection', function(socket){ socket.emit('welcome', {text: 'OH HAI! U R CONNECTED!'}); });
错误原因:
主要的错误原因是上面代码第8行,将代码改为以下形式即可工作。
var express = require('express'); var app = module.exports = express.createServer(), io = require('socket.io').listen(app); app.listen(3000); app.get('/', function(req, res){ res.sendfile('/index.html', {root: __dirname}); }); io.sockets.on('connection', function(socket){ socket.emit('welcome', {text: 'OH HAI! U R CONNECTED'}); });
在win 下 传
__dirname + '/index.html'
-> E:\nodejs\demo/index.html
貌似,那里用 url 解析模块.最后解析的结果不是windows 那种路径样子..
然后到创建流的时候路径就不对了..
参考资料:https://github.com/visionmedia/send
相关文章推荐
- [Node.js]在windows下不得不防的小错误
- Windows下安装Node.js+Express出现的错误
- 在Windows平台上安装Node.js及NPM模块管理
- 初步NodeJS in Windows:从安装到入门
- 安装windows版node.js
- Windows 下 玩转Node.JS
- Windows下Node.js与npm的安装与配置
- Node.js使用MongoDB模块时的常见错误
- Node.js connect ECONNREFUSED错误
- Windows下Node.js安装及环境配置方法
- Windows下Node.js安装Canvas插件
- node.js常见的一些错误信息
- Node.js下如何自定义错误类型
- Node.js入门学习笔记-IDE选择/配置之WebStorm(windows)
- windows下安装node.js及less
- Windows准备Node.js运行与开发环境
- Appium_在Windows平台上安装Node.js及NPM模块管理
- 【node.js】windows安装express:'express' 不是内部或外部命令,也不是可运行的程序或批处理文件。
- windows中安装Node.js-安装angular-cli
- node.js 中使用ajax status=0的错误