Вот полный код
Я пытаюсь скачать с тостера картинку и сохранить ее в файл.
Не важно куда сохранять, даже если создать сервер и пробовать ее вывести на экран, ничего не выходит.
В чем ошибка?
Или это просто кривой curl?
9050 это порт тора
//https://github.com/JCMais/node-libcurl
var Curl = require('node-libcurl').Curl,
path = require('path'),
fs = require('fs');
//tor proxy
var proxy_ip_port = '127.0.0.1:9050';
//https://curl.haxx.se/libcurl/c/curl_easy_setopt.html
var curl = new Curl(),
url = 'http://',
cookieJarFile = path.join(__dirname, 'cookiejar.txt');
if (!fs.existsSync(cookieJarFile)) {
fs.writeFileSync(cookieJarFile);
}
curl.setOpt(Curl.option.URL, 'https://hsto.org/r/w120/webt/59/cc/76/59cc7600c78a2239379574.jpeg');
curl.setOpt(Curl.option.VERBOSE, true);
curl.setOpt(Curl.option.COOKIEFILE, cookieJarFile);
curl.setOpt(Curl.option.COOKIEJAR, cookieJarFile);
curl.setOpt(Curl.option.FOLLOWLOCATION, 1);
curl.setOpt(Curl.option.HEADER, 0);
curl.setOpt(Curl.option.SSL_VERIFYPEER, 0);
curl.setOpt(Curl.option.SSL_VERIFYHOST, 0);
curl.setOpt(Curl.option.PROXYTYPE, Curl.proxy.SOCKS5_HOSTNAME);
curl.setOpt(Curl.option.PROXY, proxy_ip_port);
curl.perform();
curl.on('end', function(statusCode, body, headers) {
console.info('Status Code: ', statusCode);
console.info('Headers: ', headers);
console.info('Headers length: ', headers.length);
console.info('Body length: ', body.length);
//console.info('Body: ', body);
//console.info('METHOD: ', req.method);
console.info('HEADER_SIZE: ', curl.getInfo('HEADER_SIZE'));
for (var infoName in Curl.info) {
if (Curl.info.hasOwnProperty(infoName) && infoName !== 'debug') {
console.info(infoName, ': ', this.getInfo(infoName));
}
}
var fs1 = require('fs');
fs1.writeFile(path.join(__dirname, 'llllllllll.jpg'), body, function(err) {
if(err) {
return console.log(err);
}
console.log("The file was saved!");
});
this.close();
console.info('Cookie file contents:');
console.info(fs.readFileSync(cookieJarFile).toString('utf8'));
});
curl.on('error', curl.close.bind(curl));
Готов скинуть 3000 р на сбер тому кто первым решит задачу
Только вариант через curl и именно так как в коде