Tài liệu API REST nói rằng PUT /V1/products/{sku}
tạo ra chứ không phải cập nhật.
Đó có phải là một lỗi trong các tài liệu bởi vì tôi sẽ cho rằng đó là một phương thức cập nhật và POST là phương thức để tạo?
Tài liệu API REST nói rằng PUT /V1/products/{sku}
tạo ra chứ không phải cập nhật.
Đó có phải là một lỗi trong các tài liệu bởi vì tôi sẽ cho rằng đó là một phương thức cập nhật và POST là phương thức để tạo?
Câu trả lời:
Tuyến đường POST và PUT đến cùng một phương thức lưu, nhưng với POST bạn không thể vượt qua sku
<route url="/V1/products" method="POST">
<service class="Magento\Catalog\Api\ProductRepositoryInterface" method="save"/>
<resources>
<resource ref="Magento_Catalog::products" />
</resources>
</route>
<route url="/V1/products/:sku" method="PUT">
<service class="Magento\Catalog\Api\ProductRepositoryInterface" method="save" />
<resources>
<resource ref="Magento_Catalog::products" />
</resources>
</route>
Nhìn vào trang này: http://devdocs.magento.com/guides/m1x/api/rest/Resource/Sản phẩm / sản phẩm.html
Tôi có thể xem PUT:
Mô tả: Cho phép bạn cập nhật một sản phẩm hiện có.
Tôi đã gặp một vấn đề tương tự nhưng trong trường hợp của tôi, PUT không hoạt động đúng bởi vì:
1) FInd tất cả các sản phẩm của giỏ hàng:
GET: http://my_host.dev/index.php/rest/V1/carts/8/items
(Tôi chưa biết cách tìm cartId của khách hàng ) Tôi đã tìm đúng số bằng cách tăng số từ 1.
2) câu trả lời là:
[ { "item_id": 11, "sku": "MH07-M-Green", "qty": 1, "name": "Hero Hoodie", "price": 54, "product_type": "configurable", "quote_id": "8", "product_option":{ "extension_attributes":{ "configurable_item_options":[{"option_id": "90", "option_value": 53 }, {"option_id": "138",…] } } } ]
2) Cập nhật giá mặt hàng giỏ hàng bằng cách:
{ "cartItem": { "itemId": 11, "sku": "MH07-M-Green", "qty": 2, "name": "Hero Hoodie", "price": 1000, "productType": "configurable ", "quoteId": "8" } }
3) Tôi không nhận được giá vật phẩm cập nhật trong giỏ hàng (Phản hồi của tôi giống như ở điểm 1). Tôi cũng phải nói rằng tôi có thể xóa các mục từ giỏ hàng. Bất kỳ giải pháp cho điều này?
Cảm ơn bạn