Добавление видео в продукт Magento 2 с помощью REST

Magento версии 2.2.5 Рассматриваемая конечная точка /V1/products/{sku}/media МЕТОД: POST

Я пытаюсь добавить видео под артикулом продукта, используя конечную точку API, предоставленную Magento.

{
 "entry": {
     "media_type": "external-video",
     "label": "Video 2",
     "position": 2,
     "disabled": false,
     "types": ["thumbnail"],
     "content" : {
         "base64_encoded_data": "encoded image data ",
         "type": "image/jpeg",
         "name": "0.jpg"
     },
     "extension_attributes": {
         "video_content": {
             "media_type": "external-video",
             "video_provider": "youtube",
             "video_url": "some youtube video url",
             "video_title": "some title",
             "video_description": "",
             "video_metadata": ""
         }
     }
}

Ответ, который я получаю от этого вызова, - «недопустимое значение параметра», я отладил это в локальной среде, что приводит к сбою во время ProductRepository-> save() в Magento\Catalog\Model\Product\GalleryGalleryManagement.php в строке 70.

Это проблема с моей полезной нагрузкой или реальной ошибкой magento?


person Rajbir Singh    schedule 31.07.2018    source источник


Ответы (2)


Эта проблема решена путем добавления видео напрямую с помощью конечных точек POST /V1/products или PUT /V1/products/{sku}.

пример почтового метода:

{ 
  "product": {
     "sku": "some-sku",
     ..... other product data,
     "media_gallery_entries": {
         "media_type": "external-video",
         "label": "Video 2",
         "position": 2,
         "disabled": false,
         "types": [],
         "content" : {
             "base64_encoded_data": "encoded image data ",
             "type": "image/jpeg",
             "name": "0.jpg"
          },
          "extension_attributes": {
              "video_content": {
                  "media_type": "external-video",
                  "video_provider": "youtube",
                  "video_url": "some youtube video url",
                  "video_title": "some title",
                  "video_description": "",
                  "video_metadata": ""
          }
     }
   }
}

Мне не повезло с конечной точкой Magento MediaGallery POST (/V1/products/{sku}/media.

person Rajbir Singh    schedule 02.08.2018

Если вы хотите добавить видео на страницу продукта, то почему вы не пробовали использовать YouTube API?

Вам просто нужно выполнить следующие шаги:

  • Сгенерируйте ключ API YouTube, перейдя в консоль разработчика Goodle.
  • Затем добавьте ключ API Youtube в свой Magento 2, перейдя в МАГАЗИНЫ -> Конфигурация.
  • Затем добавьте URL-адрес видео
person Syed Muneeb Ul Hasan    schedule 18.10.2018