node通过axios下载图床的图片,永远是缩略图。
ode通过axios下载图床的图片,永远是缩略图。通过postman访问正常。
尝试把postman请求header,复制到代码中也无效。
搞不懂哪里出问题了,请求大佬们指点一下。
代码如下:
const { FileBox } = require('file-box');
const fs = require('fs');
const path = require('path');
let rootPath = path.resolve(__dirname);
var request = require('request');
const axios = require('axios').default;
const url = 'https://i.ibb.co/jzBCz6Y/123.jpg';
// const url = "https://i.ibb.co/f9B391W/123.jpg";
// const url = "https://i.ibb.co/sCkTCm4/123.jpg";
async function test() {
const fileBox = FileBox.fromUrl(url);
// console.log(fileBox);
console.log(rootPath);
await fileBox.toFile(rootPath + '/' + new Date().getTime() + '.jpg');
}
// test();
async function test2() {
console.log(rootPath);
// request.head(url, function(err, res, body){
// request(url).pipe(fs.createWriteStream(rootPath + "/" + (new Date().getTime()) + '.jpg'));
// });
axios({
method: 'get',
url: url,
// responseType: 'stream',
headers: {
'User-Agent': 'PostmanRuntime/7.29.2',
"Accept": '*/*',
'Cache-control': 'no-cache',
'Postman-Token': '16aae614-2347-45cc-81be-46d54a4a8572',
"Host": 'i.ibb.co',
'Accept-Encoding': 'gzip, deflate, br',
"Connection": 'keep-alive',
},
}).then(function (response) {
console.log(response);
// response.data.pipe(fs.createWriteStream(rootPath + '/ada_lovelace.jpg'));
});
}
test2(); 是不是图床链接弄错了,图床有缩略图的链接,也有正常图片的链接 HK仅輝 发表于 2022-9-14 17:00
是不是图床链接弄错了,图床有缩略图的链接,也有正常图片的链接
链接没有错。
同样的链接,在浏览器和postman正常访问。
但是通过代码就不行。
下面是链接
https://i.ibb.co/jzBCz6Y/123.jpg
您可以跑一下我发的代码。
通过fiddler代{过}{滤}理拦截,看下你代码的header和你post发送的header是不是完全一致的,,,
/**
* 不忘初心,努力前行
*/
页:
[1]