nodejs的全局安装的模块都装到这里了:/usr/local/lib/node_modules/
搞前段和后端开发,一个idea就够了,这个工具太牛逼了!
用idea创建的express框架示例程序,改文件后直接刷新就行,自动完成监控。
如果想手动监控,可以参考这里
安装supervisor
npm install -g supervisor
用supervisor启动js
supervisor app.js
涉及到ES6,于是找到了一篇文章介绍ES6的特性
很喜欢下面几个特性:
js抛异常的时候,要注意那个异常类的第一个字符大写,小写不行!
// Throws with a ReferenceError because z is undefined
try {
throw new Error("id: 不存在");
} catch (err) {
// Handle the error here.
console.log(err);
console.error(e);
}
console.log和console.error不太一样,log的是白色的,error的信息在控制台显示的是黄色的,ide为IDEA。
nodejs处理post请求的时候,需要注意:
如果是一般的表单默认行为(www-form-urlencoded )或者form-data 的,都可以正常接收,如果是raw格式的,这时相当于传一个大文件上来,则需要发送端的raw数据是json 格式的,而且请求的header也必须是 content-type:application/json 才可以。
详细内容可以参考这篇文档:
然后在router里面可以进行post处理
//引入body-parser,然后进行一些设置
var bodyParser = require('body-parser');
app.use(bodyParser.json({limit: '2mb'}));
app.use(bodyParser.urlencoded({ extended: true }));
/**
- 增加数据Post
*/
router.post('/createUser',function (req,res) {
console.log(req.body);
res.send(req.body);
});
此时postman有一个蛋疼的bug,自定义header有问题,发送的header总是文本,所以用curl来模拟
curl -H "Content-Type: application/json" -X POST -d '{"username":"xyz","password":"xyz"}' http://localhost:3000/users/createUser
感谢stack-overflow的帖子: 里面详细的讲解了如何通过命令行提交json格式的数据,然后再接收就正常了。
其他参考文档:
注意这里允许raw 格式的post请求后,x-www-form-urlencoded 格式的数据也一样可以处理,但是form-data 的不行。因此,我们可以让前端程序员发送post请求时,把格式都改一下,别用form-data 。
发送xml的方式如下:
curl -H "Content-Type: text/xml" -X POST -d 'asdf' http://localhost:3000/users/xml
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|