Проблема с загрузкой изображения POST запросом

Поддержка
  • скинь свой проект

  • BAS не загрузит изображение без загрузки изображения. Base64 в данном случае не имеет смысла, т.к. серверу надо двоичные данные.
    Почитайте ЭТО, может поможет, но, думаю, не на каждом сайте прокатит.

  • @gurkin4
    Читал, но еще раз перечитаю, может что то упустил

  • @gurkin4
    Передавать нужно именно в двоичных данных? А есть ли в BASе функция для перевода изображений в двоичные данные?

  • @gurkin4
    Перечитал, и попробовал его проект с некоторыми исправлениями запустить у себя
    Но ответ такой же "{"type":"internal-error","message":"ru.yandex.commune.a3.action.parameter.IllegalParameterException"}"
    Еще немного не понял про загрузку изображения (

  • попробуйте этот же запрос в конструкторе собрать, не читайте файл в base64

  • @Inwnew
    Попробовал, такой же результат ((

  • @suvorov_jr2 попробуй читать файл сначала вот так

    Screen Shot 2023-03-10 at 15.37.23.png
    и отправляешь как есть без всяких base64:

  • @suvorov_jr2
    Должно быть:

    1. base64:[[FILE_CONTENT]]
    2. multipart/form-data; boundary=----WebKitFormBoundaryТРАТАТА
      в content-type

    Остальное по скринам вроде все верно. Сам проект не смотрел

  • @suvorov_jr2 а может дело в другом? Почитайте про 400 ошибку

    https://ru.hostings.info/schools/400-bad-request.html

  • @Bigma
    Все из вышеперечисленного попробовал, ничего не помогло. Появилась идея, что за загрузку картинки отвечает несколько запросов, потому что загрузка картинки проходит в несколько этапов.

  • @suvorov_jr2 Вот вы серьезно думаете что проблема в картинке ?
    А мне кажется что с дзеном не все так просто, и передаваемые вами данные куда то о чем то, давно устарели.

    И так вы уверены что ссылка должна быть точно такой ?
    и все передаваемые данные опять же верны, и не генерируются при каждом запросе новые.
    X-FP-Token
    X-Csrf-Token
    Session_id
    WebKitFormBoundary[[RANDOM_STRING]] там точно должен быть [[RANDOM_STRING]] или это вы так решили ?

  • @Dodok
    Другой ссылки я не наблюдаю. Значения токенов не меняются. На каждом аккаунте свой токен. Сессион айди входит в куки, но я пробовал загружал куки через HTTP клиент. Про значение WebKit: оно всегда генерируется 16 рандомными символами, а чтобы оно генерировалось самим дзеном в другом каком то запросе я не увидел.

  • @suvorov_jr2 снифишь запросы только на отправку картинки, лучше использовать фидлер евривеэ.
    смотришь как запрос отправляется, и сверяешь так ли отправился запрос с той же картинкой из бас.
    Находишь разницу, изучаешь почему. Но скорее всего в данном случае вредные советы по переводу в base64.
    Эксперименты с одной и той же картинкой надо проводить. Например разные редакторы могут кучу всяких мета данных добавлять к картинке, дзен может их чистить сначала ...

  • @Bigma
    Я в принципе так и делаю, одну и ту же картинку отправляю. И без перевода в base64 пробовал. А вот идея по чистке мета данных может быть актуальна. Перед загрузкой изображения каждый раз отслеживаются несколько запросов такого типа
    14e6517c-67c3-4372-b7c0-26a9fa11fbe1-image.png

    я думаю может они как то связаны друг с другом, хотя этот запрос данных изображения не отправляет...
    еще есть несколько запросов такого типа:
    f9f384b7-1388-4dcd-af2c-251b6248ec20-image.png
    но они мне кажется не должны влиять на мой пост запрос, хотя может быть я ошибаюсь

  • @suvorov_jr2 смотри тело запроса - это первое что должно совпадать. То есть данные одной и той же картинки должны быть одинаковы. Если так, то уже все остальное...

  • @Bigma
    хорошо, гляну завтра с утра - отпишу если получится, спасибо )

  • @suvorov_jr2 и как додок сказал возможно то что ты принимаешь за [[RANDOM_STRING]] это какой то токен, который возможно есть на странице формы добавления картинки .... Лень изучать, но как вариант.

  • В HEADERS вообще не нужна multipart/form-data (пробовал на запросах в другой программе на разных сайтах), а вот Origin: адрес сайта частенько требуется.