CNode

node启动后,控制台打印undefined,就退出了,

问答
HHeroBoyluck发布于9 年前最后回复9 年前6 回复4392 浏览0 收藏

初学,有些地方不懂,描述有误,请见谅! 使用node向服务器推送数据(图片),使用的模块是form-data,form.pipe();先遇到的一个问题是, unhandle event error pipe stream!,查询完后在前面加了on('error',)解决了,然后启动后,就出现undefined,自动退出, 日志没打印,也不知道什么问题。。

查看回复

回复 (6)

H
HeroBoyluck#1·9 年前

var crypto = require('crypto'), FormData = require('form-data'), fs = require('fs'), http = require('http'), util = require('util');

var uuid = "41006200-1351-3433-3738-373100000000", host = "localhost", apiKey = "036a8483ad55932131ba3", apiSecret = "EDQvVRsg5thvuHlfYVdfdsafvzKfK1Pak8FEP2KiodWezQY8";

var form = new FormData(); form.append('image', fs.createReadStream('image.jpg'));

var headers = form.getHeaders(), date = Date(), path = util.format('/backend/%s', uuid);

auth = crypto.createHmac('sha256', apiSecret) .update(util.format('%s\n%s\n%s\n%s\n%s', 'PUT', '', headers['content-type'], date, path)) .digest('base64');

headers.Date = date; headers.Authorization = util.format('%s:%s', apiKey, auth)

var request = http.request({ method: 'post', host: host, port: 4000, path: path, headers: headers }); request.on('error',function(res){ //控制台打印这个error,是哪的问题, console.log("error"); });

form.pipe(request); //没有执行,

request.on('response', function(res) { if (res.statusCode != 200) { console.log('Error: ' + res.statusCode) } res.on('data', function (chunk) {

    console.log(chunk);
});

}); 自己初学,也不太懂,也没个可以问的人,翻遍了整个网络,找不到,

H
HeroBoyluck#2·9 年前

写个东西,问题一个接着一个,累瘫了都,

H
HeroBoyluck#3·9 年前

是推送成功了吗,还是,有什么错误,不知道怎么检测,

M
mabu233#4·9 年前

你放代码吧,你这么说谁知道哪里有问题?

H
Huqiuwei#5·9 年前

顶个

U
USERARSSASion#6·9 年前

报错也贴出来么 request 接收的错误可能就是请求的问题了。自习看看报错。报错是比较详细的

参与回复
登录后即可参与回复。登录