@Fox Нет, я про действие из модуля "Сеть" - Получить статус запроса.
Как правильно отправить image/jpeg POST запросом в BAS ?
-
Как правильно отправить image/jpeg POST запросом в BAS ?
В двух словах, нужно добавить материал на сайт POST запросом. Через захват HTTP запросов удалось получить правильный POST запрос "multipart/form-data", и если туда подставлять переменные и текст без файла, то всё нормально отправляется.
Но с если с изображением, то приходит сообщение:Материал добавлен.
Не загружено изображение: Ошибка чтения файлаПри этом, если через браузер отправлять, то все отправляется, а HTTP перехватчик POST запросов получает форму multipart, где имеется вот такая часть:
------WebKitFormBoundaryK73tNFrXYQOuO6LO
Content-Disposition: form-data; name="file1"; filename="foto.jpg"
Content-Type: image/jpegBINARY DATA
------WebKitFormBoundaryK73tNFrXYQOuO6LOА если использовать конструктор данных запроса, то уже ругается BAS, что не удалось отправить файл при отправке, хотя добавляю файл через кнопку " + Добавить как файл", тип содержимого прописан "multipart".
-
@profitget said in Как правильно отправить image/jpeg POST запросом в BAS ?:
А если использовать конструктор данных запроса, то уже ругается BAS, что не удалось отправить файл при отправке, хотя добавляю файл через кнопку " + Добавить как файл", тип содержимого прописан "multipart".
Значит, что то не так делаете. Посмотрите темы на форуме, как другие люди отправляют... Вроде бы проекты можно найти рабочие.
-
@uraabk , да, только вот что? BAS выдаёт сообщение "Не удалось загрузить файл", при этом отправку обрывает именно на этой части передаваемого сообщения:
--jpyjbaufhdeoztmyqwkgedmnysbrlexbseptrwgo
Content-Disposition: form-data; name="file1"; filename="foto.jpg"
Content-Type: image/jpeg����
Добавлял в конструктор так: "file1","file://foto.jpg"
На вики написано, что для содержимого "multipart/form-data" после пустой строки должно быть "двоичное содержимое первой фотографии":
--Asrf456BGe4h
Content-Disposition: form-data; name="AttachedFile2"; filename="horror-photo-2.jpg"
Content-Type: image/jpeg
(пустая строка)
(двоичное содержимое второй фотографии)А BAS отправляет ����
Или так и должно быть? -
@profitget said in Как правильно отправить image/jpeg POST запросом в BAS ?:
А BAS отправляет ����
Или так и должно быть?Так и должно быть
-
@gr-al-ni said in Как правильно отправить image/jpeg POST запросом в BAS ?:
@profitget Тема уже довольно старая, но если не ошибаюсь вы на запросах постили на пинтерест, сегодня столкнулся с такой же проблемой, если не секрет как вы её решили?
Пользователь указал решение:
@profitget said in Как правильно отправить image/jpeg POST запросом в BAS ?:
@xclsv said in Как правильно отправить image/jpeg POST запросом в BAS ?:
Данные необходимо передавать в формате base64
А ясно... Вопрос решён, всем спасибо за подсказки...
-
@fox Это было то что я сделал в первую очередь когда прочитал тему, сделал запрос в конструкторе и отправил в бас64 статус ответа был 404
тело запроса
--mnzjjfqcopwyftypxhffrszzumfmjhjookhyftwd
Content-Disposition: form-data; name=""; filename="file.jpg"
Content-Type: image/jpeg����
когда делаю запрос без конструктора статус ответа 200, но ответ {"success": false, "error": "Uh oh! We're having trouble with that one. Try again, or pick a new image."} то есть картинка не принимается
тело запроса
------WebKitFormBoundarynFJWuhgHBpXTNUtd
Content-Disposition: form-data; name="img"; filename="blob.jpg"
Content-Type: image/jpeg����
-
@gr-al-ni said in Как правильно отправить image/jpeg POST запросом в BAS ?:
@fox Это было то что я сделал в первую очередь когда прочитал тему, сделал запрос в конструкторе и отправил в бас64 статус ответа был 404
тело запроса
--mnzjjfqcopwyftypxhffrszzumfmjhjookhyftwd
Content-Disposition: form-data; name=""; filename="file.jpg"
Content-Type: image/jpeg����
когда делаю запрос без конструктора статус ответа 200, но ответ {"success": false, "error": "Uh oh! We're having trouble with that one. Try again, or pick a new image."} то есть картинка не принимается
тело запроса
------WebKitFormBoundarynFJWuhgHBpXTNUtd
Content-Disposition: form-data; name="img"; filename="blob.jpg"
Content-Type: image/jpeg����
Вы ранее загружали картинки через http запросы?
-
@gr-al-ni said in Как правильно отправить image/jpeg POST запросом в BAS ?:
@fox было дело)
Значит вы что то делаете не так
:DПрикладывайте скрипт, посмотрим -
0_1570048687035_test.xml
здесь мой запрос, в конструкторе и без -
@gr-al-ni С вашим примером сложно что-то сказать, как его проверить без авторизации? ) Но навскиду скажу, что не надо читать файл, а потом его преобразовывать в base64, у экшена чтение файла сразу есть такая возможность.

Опять же вы можете просто указать в конструкторе, что это файл. Разницы нет, если все правильно сделать!