@Fox передал под функцию if, всё заработало. спасибо
Сложный параметр в POST multipart запросе
-
Приветствую.
Пытаюсь подключить FusionBrain по API для генерации картинок, но возникла проблема с вложенным параметром "generateParams", из примера на сайте https://fusionbrain.ai/docs/doc/api-dokumentaciya/
Сервет отвечает "Required part 'params' is not present.", скорее всего некорректно ввожу этот параметр.

Есть ощущение, что нужен вообще не multipart, но на другие варианты сервер отвечает: "Unsupported Media Type","message":"Content-Type 'application/json' is not supported."
Все заголовки необходимые прописаны, X-Key и X-Secret, с Get-запросом работают. В чем может быть проблема? -
на скрине не видно что заголовки прописаны.
у них же есть уточнение по поводу этой ошибки:
415 Unsupported Media Type - формат содержимого не поддерживается сервером
При возникновении 415 ошибки рекомендуем воспользоваться данным скриптом, который необходимо отправить в postman. -
Bigma, благодарю за ответ.
Да, я видел про упоминание postman и ошибки 415, но я только запросы начал осваивать, а тут какое-то стороннее приложение надо прикрутить, curl и другие страшные названия... неужели это все действительно нужно чтобы сгенерировать их сберовские дурацкие картинки?
Я заголовки отдельно 2 экшенами "установить заголовок" сделал, поэтому их нет в запросе, но на get запросе все нормально отрабатывает и дает ответ как положено.
Да, не указал пример запроса из их описания, где тот самый параметр "generateParams", который непонятно как вводить{
"type": "GENERATE",
"style": "string",
"width": 1024,
"height": 1024,
"num_images": 1,
"negativePromptUnclip": "яркие цвета, кислотность, высокая контрастность",
"generateParams": {
"query": "Пушистый кот в очках",
}
} -
Заголовки отправляются, я проверял, иногда правда в перемешку с параметрами, попробую и ваш вариант, но основной вопрос - как корректно ввести такой параметр и значение, как
"generateParams":{"query":"Пушистый кот в очках",}
Нигде не могу найти подобную ситуацию для multipart, ни в одном описании, ни в одном примере. -
чисто теоретически так:
"generateParams":"{'query':'Пушистый кот в очках',}" -
Всех, приветствую. Решил еще разок одолеть этот простой вроде запрос. Через POSTMAN вбиваю тестовый cUrl:
url --location --request POST 'https://api-key.fusionbrain.ai/key/api/v1/text2image/run'
--header 'X-Key: Key YOUR_KEY'
--header 'X-Secret: Secret YOUR_SECRET'
-F 'params="{
"type": "GENERATE",
"generateParams": {
"query": "море"
}
}";type=application/json'
--form 'model_id="1"'
Изменяю только ключи в заголовках и модель ID свою - получаю статус 201, все нормально.
При этом в теле запроса, который form-data:
params:{
↵ "type": "GENERATE",
↵ "generateParams": {
↵ "query": "море"
↵ }
↵}
model_id:1Мужики, ну подскажите как хотя бы такой запрос сформировать в BAS?
С заголовками все нормально, в теле запроса если не пользоваться конструктором и вставить:
params:{
"type": "GENERATE",
"generateParams": {
"query": "sea"
}
}
model_id:1
Получаю 500, Failed to parse multipart servlet request.
А с конструктором непонятно как корректно вводить имя и параметр запроса "generateParams": {
"query": "море"
} -
This post is deleted!
-