Как загрузить медиа-файл продукта - PullRequest
0 голосов
/ 07 октября 2019

следующая документация веб-службы у меня есть:

"ЗАПРОСИТЬ POST / api / rest / v1 / media-файлы

Параметры пути Ø

Параметры запроса Ø

Авторизация заголовков • Равно «Bearer xxx», xxx - маркер аутентификации, см. Раздел «Аутентификация»

Тип контента • Равен «multipart / form-data», никакие другие значения не допускаются

Тело Задано в виде данных формы

product (string) • Продукт, с которым будет связан медиа-файл. Это строка JSON, которая следует этому формату '{"identifier": "product_identifier "," attribute ":" attribute_code "," scope ":" channel_code "," locale ":" locale_code "} '. Необходимо использовать это поле или поле product_model, но не оба одновременно.

product_model (строка) • Модель продукта, с которой будет связан медиа-файл. Это строка JSON, которая следует этому формату '{"code": "product_model_code", "attribute": "attribute_code", "scope": "channel_code", "locale": "locale_code "}». Вы должны использовать это поле или поле product, но не оба одновременно. Файл

(строка / двоичный файл) • Двоичные файлы файла "

со следующимUNIREST код (созданный через почтальона) Я попытался загрузить файл.

кажется, что загружено только имя картинки, но картинка не обновлена. Она пуста ...

С помощью cURLКажется, это работает без проблем. Есть предложения?

Спасибо,

Мартин

HttpResponse<String> response = Unirest.post("http://localhost/api/rest/v1/media-files")
                  .header("content-type", "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW")
                  .header("Authorization", "Bearer xxxxxx")
                  .header("Content-Type", "multipart/form-data")
                  .header("cache-control", "no-cache")
                  .header("Postman-Token", "1d1acbcc-34f7-421b-a323-9772f9638b00")
                  .body("------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"product\"\r\n\r\n{\"identifier\":\"11L200PH1233\", \"attribute\":\"productImage\", \"scope\": null,\"locale\":null}\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"file\"; filename=\"bild.jpg\"\r\nContent-Type: image/jpeg\r\n\r\n\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--")
                  .asString();
...