Как установить шапку группы через VK API?

680
13 января 2017, 08:18

Для начала вот, что такое шапка группы:

В документации API не сказано абсолютно ничего про загрузку. Вылазки через неофициальные клиенты больше не помогают, ибо в них такое не реализовано (отсылка к этому вопросу). Путём просмотра запросов, обнаружил, что сигнатура вызовов не похоже не на один метод/способ загрузки файлов, указанный здесь. Итак, что я смог отрыть из запросов:

  1. У каждого файла, загружаемого на шапку, есть _sig. Он странным образом меняется от запроса к запросу, но без него нельзя загрузить файл.
  2. Если отловить запросы вк, то мы получим статическую ссылку для загрузки файла. Эта статическая ссылка вполне себе работает и при переходе на нее пишет такое:

    {"error":"ERR_UPLOAD_FILE_NOT_UPLOADED: file not found","bwact":"owner_cover","server":836521,"mid":151665536,"_sig":"83447078c5079124026b80d90f116398"}
    

Однако после исполнения загрузки в коде, получаем:

{"error":"ERR_UPLOAD_BAD_SIGNATURE","bwact":"owner_cover","server":836521,"_sig":"d762c16dc795c4f65b59aafdaa39628a"}
  1. Метод, используемый VK (обычно метод виден в параметре act. Допустим, при загрузке аудио-сообщения, было add_doc), в документации отсутствует и выглядит так: act=owner_cover.

Кому интересно - прошу помочь. Заранее спасибо за ваши ответы! Даже если есть маленькая идея - ее тоже можно в ответы или комменты. Возможно, вопрос также разрастется, как этот...

Update:
Уважаемый Александр Аксентьев помог ответом на мой вопрос на Toster (https://toster.ru/q/387001?e=4789988#comment_1277944), однако код на php и почему-то (оказывается, поэтому я и сидел так долго), воспроизвести его корректно на Java я не смог. Постоянно VK ругается. Возможно, кто-то поможет переписать сий код на Java и я смогу оформить ответ для всех, кто ищет истину... Спасибо!

Вот код Александра Аксентьева: https://gist.github.com/flerry/1e4bce263d96ab6febf71ad51e3d0613

READ ALSO
Проблемы с методом File.isDirectory()

Проблемы с методом File.isDirectory()

Проблема заключается в том, что в папке есть файлы со следующим названием

276
Шаблоны-проектирования [требует правки]

Шаблоны-проектирования [требует правки]

Недавно прочел книгу шаблоны проектирования,написанную Марком ГрантомТам были освещены основные паттерны проектирования, но у меня появилось...

296
Как проверять сеть во время стрима

Как проверять сеть во время стрима

У меня возник вопрос относящееся к видео стримуНапример видео воспроизводится онлайн, во время воспроизведения нужно ли проверять соединение...

300
Почему возникает исключение IndexOutOfBoundsException в AbstractListModel

Почему возникает исключение IndexOutOfBoundsException в AbstractListModel

Исключение выходит если запускаю в потоке, а без потока не появляется вроде быКак подправить чтоб без бага было

444