nodejs的http和https下载远程资源post数据实例
更新时间:2023年09月28日 08:55:53 投稿:ychy
这篇文章主要为大家介绍了nodejs的http和https下载远程资源post数据实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
nodejs下载资源
经常用到nodejs下载资源的情况(简单的爬虫),可以考虑直接使用nodejs内置的http/https模块。

test.mjs
import https from 'https'
import fs from 'fs'
import URL from 'url'
let urlObj = URL.parse(url)
https.get({
...urlObj,
rejectUnauthorized: false, // 忽略https安全性
method: 'GET', // 请求方式
headers: {
referer: '', // 如果资源有防盗链,则清空该属性
},
}, res => {
//设置编码格式
res.setEncoding('binary');
let img = ''
res.on('data', chunk => {
img += chunk
})
res.on('end', chunk => {
// 写到本地,(文件名,源文件,编码格式)
fs.writeFileSync('./test.jpg', img, "binary");
})
})post数据
import http from 'http'
import URL from 'url'
async function post(url, dataStr) {
let urlObj = URL.parse(url)
return new Promise((resolve) => {
const req = http.request({
...urlObj,
method: 'POST', // 请求方式
headers: {
'Content-Length': dataStr.length, // post必须填写大小
'Content-type': 'application/x-www-form-urlencoded', // 编码格式
referer: url, // 如果资源有防盗链,则清空该属性
},
}, res => {
//设置编码格式
// res.setEncoding('binary');
let data = ''
res.on('data', chunk => {
data += chunk
})
res.on('end', chunk => {
resolve(data)
})
})
// 发送数据
req.write(dataStr);
req.end();
})
}以上就是nodejs的http和https下载远程资源post数据实例的详细内容,更多关于nodejs http https远程下载的资料请关注脚本之家其它相关文章!
相关文章
node故障定位顶级技巧动态追踪Dynamic Trace详解
这篇文章主要为大家介绍了node故障定位顶级技巧动态追踪Dynamic Trace详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-09-09
深入剖析Express cookie-parser中间件实现示例
本篇文章主要介绍了深入剖析Express cookie-parser中间件实现示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-02-02
Node.js环境下JavaScript实现单链表与双链表结构
Node环境下通过npm可以获取list的几个相关库,但是我们这里注重于自己动手实现,接下来就一起来看一下Node.js环境下JavaScript实现单链表与双链表结构2016-06-06


最新评论