Сложный параметр в POST multipart запросе

Поддержка
  • Приветствую.
    Пытаюсь подключить FusionBrain по API для генерации картинок, но возникла проблема с вложенным параметром "generateParams", из примера на сайте https://fusionbrain.ai/docs/doc/api-dokumentaciya/
    Сервет отвечает "Required part 'params' is not present.", скорее всего некорректно ввожу этот параметр.
    Clipboard 1.png
    Есть ощущение, что нужен вообще не 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": "Пушистый кот в очках",
    }
    }

  • @Roy заголовки ставьте прям в кубике пост запроса - там есть поле для них. Ну и смотрите в отправленных запросах - что ушло. Сверяйте.

  • Заголовки отправляются, я проверял, иногда правда в перемешку с параметрами, попробую и ваш вариант, но основной вопрос - как корректно ввести такой параметр и значение, как
    "generateParams":{"query":"Пушистый кот в очках",}
    Нигде не могу найти подобную ситуацию для multipart, ни в одном описании, ни в одном примере.

  • чисто теоретически так:
    "generateParams":"{'query':'Пушистый кот в очках',}"

  • @Roy вы же можете не использовать конструктор запроса

  • @UserTrue, да, я в курсе, как только не пробовал скормить эти данные. Через postman отправлял запросы, импортировал curl, но результата не получил. А может и сервис просто кривой, сбер все-таки.

  • Всех, приветствую. Решил еще разок одолеть этот простой вроде запрос. Через 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!
  • @xASZx, Спасибо, добрый человек. Вроде решил свой вопрос - получил картинку.

  • 0 Votes
    8 Posts
    734 Views
  • 0 Votes
    3 Posts
    383 Views
  • 0 Votes
    4 Posts
    678 Views
  • 0 Votes
    2 Posts
    1115 Views
  • 0 Votes
    36 Posts
    24325 Views