node的http.get一个诡异的问题
来源:互联网 发布:淘宝学校排名 编辑:程序博客网 时间:2024/05/29 14:46
http.get('http://nodejs.org/dist/index.json', (res) => { const { statusCode } = res; const contentType = res.headers['content-type']; let error; if (statusCode !== 200) { error = new Error('Request Failed.\n' + `Status Code: ${statusCode}`); } else if (!/^application\/json/.test(contentType)) { error = new Error('Invalid content-type.\n' + `Expected application/json but received ${contentType}`); } if (error) { console.error(error.message); // consume response data to free up memory res.resume();//就是这句话 return; } res.setEncoding('utf8'); let rawData = ''; res.on('data', (chunk) => { rawData += chunk; }); res.on('end', () => { try { const parsedData = JSON.parse(rawData); console.log(parsedData); } catch (e) { console.error(e.message); } });}).on('error', (e) => { console.error(`Got error: ${e.message}`);});
使用node官方的demo;在statusCode不是200的时候,如果还没有下面这个话,
res.resume();//就是这句话
还会导致请求超时,如果error里面调用的调用者的回调,超时里面又调用了调用者的回调,
就会导致回调调用2次,并且资源不能释放,会有大问题
阅读全文
0 0
- node的http.get一个诡异的问题
- 一个诡异的问题
- 一个诡异的问题
- 一个诡异的问题
- Mac配置Node出现的诡异问题
- 一个诡异的bash问题
- SqlParameter的一个诡异问题
- pyspider的一个诡异问题
- 一个诡异的Java问题
- Python的dict一个诡异的问题
- 关于网页显示的一个诡异问题
- 关于索引的一个诡异问题
- 一个sqlite应用诡异的问题
- 一个关于JavaScript的诡异问题
- Socket编程中的一个诡异的问题
- Struts2一个诡异问题的解决
- 一个诡异的时间问题追查[转]
- 一个诡异的问题,【已解决】
- pc端弹出层滚动外层也滚动问题
- 7天玩转云服务器
- Microsoft Project 组件Aspose.Tasks V17.8发布 | 附下载
- (未解决)牛客 题库 STL中的unordered_map和priority_queue使用的底层数据结构分别是什么?()
- jenkins自动编译maven项目
- node的http.get一个诡异的问题
- 平移滑动详情页面
- [通俗易懂]深入理解TCP协议(下):RTT、滑动窗口、拥塞处理
- Codeforces Round #433 (Div. 2) D. Jury Meeting(思维 贪心 前后缀)
- redis.conf中文详解
- hadoop自定义数据类型
- mysql 多行并在一行查询语句的写法
- 数据库:三个范式
- Configuring iptables on CentOS 6.5