Работа с ВК Апи

andrey_hacker

Известный
Автор темы
274
88
Версия MoonLoader
.026-beta
Всем привет, есть такой код:

Lua:
    response1 = requests.get('https://api.vk.com/method/docs.getMessagesUploadServer?v=5.103&type=doc&peer_id='..user_id..'&access_token='..access_token)

    local info = decodeJson(response1.text)
    upload_url = info.response.upload_url
   
    response = requests.post{url = upload_url, data = io.open(file1,'r')}
Проблема в том, что пишет {"error":"no_file","error_descr":"no_file"}
Как отправить файл post-запросом в формате multipart/form-data ?
 
Последнее редактирование:

andrey_hacker

Известный
Автор темы
274
88
как минимум глупо пытаться в data записать хендл на открытый файл, если тебе нужно его содержимое - прочитай через io.read
я хотел узнать как передать файл, я не знаю как это сделать и поэтому вот эту херню написал
up памагитее !!1
 
Последнее редактирование:

andrey_hacker

Известный
Автор темы
274
88
как минимум глупо пытаться в data записать хендл на открытый файл, если тебе нужно его содержимое - прочитай через io.read
можешь подсказать, как засунуть в post-запрос файл ?
 

andrey_hacker

Известный
Автор темы
274
88
\moonloader\lib\requests.lua:153: No url specified for request
stack traceback: при requests.request
попробуй вместо requests.post использовать requests.request , и скорее всего, data придется закодировать через urlencode
 

f0Re3t

Poh production
Друг
876
808
\moonloader\lib\requests.lua:153: No url specified for request
stack traceback: при requests.request
так не просто же заменить, а сформировать ссылку надо еще
так не просто же заменить, а сформировать ссылку надо еще
вместо своего
Код:
response = requests.post{url = upload_url, data = io.open(file1,'r')}
тебе нужно сформировать ссылку и отправить ее через функу которую я сказал, должно работать
 
  • Нравится
Реакции: andrey_hacker

andrey_hacker

Известный
Автор темы
274
88
Lua:
    response1 = requests.get('https://api.vk.com/method/docs.getMessagesUploadServer?v=5.103&type=doc&peer_id='..user_id..'&access_token='..access_token)
    print(response1)
    local info = decodeJson(response1.text)
    upload_url = info.response.upload_url
    print(upload_url)
    response = requests.post{url = upload_url, file = f}
    print(response.text)
Я дегроид, можешь пожалуйста еще раз сказать, шо делать тут
response = requests.request("POST", upload_url) сделал, а дальше что делать ?
 
Последнее редактирование:

Похожие темы

  1. Ответы
    2K
    Просмотры
    1M
  2. D
    Ответы
    2
    Просмотры
    585
    Вопросы
    deleted-user-458204
    D
  3. Ответы
    3
    Просмотры
    2K