我需要使用Magento 2 rest api按名稱查找類別。
我使用了/all/V1/categories和過濾器,但我不能讓它發揮作用。
以下是代碼:
$url = "https://*******/index.php/rest"/span>。
$token_url= $url."/V1/integration/admin/token"/span>。
$ch = curl_init()。
$data = array("username" => USERNAME, "password" => PASSWORD) 。
$data_string = json_encode($data)。
$ch = curl_init()。
curl_setopt($ch,CURLOPT_URL, $token_url) 。
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"/span>)。
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string) 。
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true)。
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false)。
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json'$token = curl_exec($ch)。
$adminToken= json_decode($token)。
$headers = array('Content-Type:application/json','Authorization:Bearer'.$adminToken) 。
$ch = curl_init()。
$apiUrl = $url."/all/V1/categories" ;
$data = [
"searchCriteria" => [
"filterGroups" => [
"過濾器" => [
"fieldName" => "類別"。
"value" => 'CATEGORY NAME'。
"condition_type" => 'eq'$data_string = json_encode($data)。
$ch = curl_init()。
curl_setopt($ch,CURLOPT_URL, $apiUrl) 。
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"/span>)。
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string) 。
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true)。
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false)。
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers) 。
$response = curl_exec($ch)。
$response = json_decode($response, TRUE);
curl_close($ch)。
這是啟動代碼后出現的錯誤:
這是個錯誤。
array: 3 [▼ "message" => ""%fieldName"是必須的。 " "引數" => array:1 [▼ "fieldName" => "類別" ]
uj5u.com熱心網友回復:
你可以通過在端點rest/all/V1/categories/list中添加搜索條件,用Magento 2 rest api來獲取類別的名稱。對api的請求應該是這樣的:
https://website.com/rest/all/V1/categories/list? searchCriteria[filterGroups][0][filters][0][field]=name&searchCriteria[filterGroups][0][filters][0][condition_type]=eq& searchCriteria[filterGroups][0][filters][0][value]=category_name。
將website.com替換為您網站的網址,將category_name替換為類別的搜索詞。
如果搜索字串還需要匹配部分類別名稱,您可以使用like而不是eq。
更多資訊,請參考。https://devdocs.magento.com/guides/v2.4/rest/performing-searches.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/320573.html
標籤:
上一篇:在Magento2中通過checkout_onepage_controller_success_action獲取送貨地址
