Я использую REST API для поиска сообщения / продукта. Но я не знаю, почему по одному ключу поиска / заголовку сообщения я получаю ошибку 400, а по другому ключу поиска я получаю правильный ответ и результат поиска. Это мой код, когда я использую, например, этот ключ поиска, я получаю ошибку 400, но когда я использую «цветок», я получаю результат поиска, а также когда я обращаюсь к URL-адресу непосредственно в браузере, я получаю правильный результат. Как вы думаете, в чем проблема? Спасибо!
<code> $search_key="3PCS SILICONE FLOWER VASE";
$url='https://example.com/wp-json/wc/v3/products?status=publish&search=' . $search_key . '&consumer_key=XXXXX&consumer_secret=XXXX';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 1);
$response = curl_exec($ch);
$http = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE);
$headers = substr($response, 0, $header_size);
$body = substr($response, $header_size);
curl_close($ch);
$headers = explode("\r\n", $headers);
$headers = array_filter($headers);
foreach ($headers as &$value) {
$arr = explode(":", $value, 2);
if ($arr[0] == 'x-wp-totalpages') {
$totalpage = $arr[1];
}
if ($arr[0] == 'x-wp-total') {
$totalproduct = $arr[1];
}
}
echo '<pre>Headers:';
var_dump($headers);
echo '
';