AllDecay
@AllDecay
Вечно отдыхающий.

Как загрузить изображение на сервер ВК?

Написал парсер изображений, который пока что просто скачивает нужные картинки в папку. Дальше по плану идет загрузка любого изображения из папки на сервер вк по заблаговременно полученной ссылке через API. Как реализовать на ноде?
  • Вопрос задан
  • 300 просмотров
Решения вопроса 1
@AltQ
Можно создать массив «files» и добавить в него пути к файлам (не более пяти), а также распарсить полученную ссылку функцией «parse» модуля «url», записав результат в переменную «URL». Далее код может быть таким:
boundary = "H#pB$Ky6Vs+Q8ioY_buA"
data = ""

for (i = 0; i < files.length; i++) {data += "--" + boundary + "\r\nContent-Disposition:form-data;name=file" + (i + 1) + ";filename=.png" + "\r\n\n" + fs.readFileSync(files[i]).toString("binary") + "\r\n"}

data += "--" + boundary + "--"

request = http.request(
	{
		method: "POST",
		path: URL.path,
		host: URL.host,
		headers: {"Content-Type": "multipart/form-data;boundary=" + boundary}
	},

	function (response) {
		var data = ""

		response.on("data", function (chunk) {data += chunk})
		response.on("end", function () {/* здесь можно распарсить ответ сервера и получить ссылки на изображения без использования метода «photos.save» */})
	}
)

request.write(data, "binary")
request.end()
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
EVAS
@EVAS
Буль :)
Можно сделать вот так )
1) Написать скрипт авторизации приложения. Что бы он мог получать права https://vk.com/dev/permissions . Или найти готовый модуль, кстати в npm их много )
2)Выбрать метод загрузки изображения, скорей всего подойдет вот такой https://vk.com/dev/photos.getUploadServer

Можно еще поискать медоты, их там много https://vk.com/dev/methods
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы