Intereting Posts
SQL-запрос, соединяющий таблицы таксономии, не возвращает то, что я ожидаю Как настроить отдельную страницу для моего пользовательского типа сообщений? Предотвратите 301, когда добавлена ​​косая черта Почему мои виджеты не сохраняются при добавлении на боковую панель? Достаточно ли sanitize_text_field () для сохранения в БД? Добавить новые настройки на экран создания страницы. Медиа-загрузчик – ошибка в моей теме Используя метод GetMediaLibrary () в python-wordpress-xmlrpc.media, как выполнить итерацию результата? Получать сообщения по таксономии без условий Создайте кликабельное имя в WP_List_Table для Plugin Admin Создание пользовательского виджета WordPress и остановка js от запуска дважды (один раз в активном виджетах один раз в селекторе виджета)? Nginx – Правило только для загрузки в WordPress Как перенаправить на страницу после отправки формы Какой крючок следует использовать для этого сценария в отношении процесса регистрации и обновления учетной записи / профиля? Язык и перевод

Попытка получить запрос api с ошибкой 404

Я пытаюсь получить список мест с сайта под названием weedmaps . Это код, который я использую:

 function call_for_api() { $url='https://api-v2.weedmaps.com/api/v2/listings'; $response = wp_remote_post( $url, array( 'timeout' => 45, 'redirection' => 5, 'httpversion' => '1.0', 'blocking' => true, 'headers' => array('accept'=>'application/json','accept-encoding' => 'gzip, deflate, br','connection' =>'keep-alive'), 'body' => null, 'cookies' => array(), 'compress' => false, 'decompress' => true, 'sslverify' => true, 'stream' => false, 'filename' => null, 'user-agent' => 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:54.0) Gecko/20100101 Firefox/54.0' ) ); if ( is_wp_error( $response ) ) { $error_message = $response->get_error_message(); echo "Something went wrong: $error_message"; } else { echo 'Response:<pre>'; print_r( $response ); echo '</pre>'; echo wp_remote_retrieve_body( $response ); } } function cf_shortcode() { ob_start(); call_for_api(); return ob_get_clean(); } add_shortcode( 'weed-list', 'cf_shortcode' ); 

Когда я просматриваю страницу карт на weedmaps. com и просмотрите вкладку моей сети, это кажется правильным конечным пунктом. Я думаю, что я пропустил что-то в том, как работает wp_remote_post .

Я никогда не видел 404 на api, но я немного новичок в этом.

Похоже, я сделал это правильно, но, возможно, эксперты api видят, что я сделал не так.

Это сообщение об ошибке, которое я получаю:

 Array ( [headers] => Requests_Utility_CaseInsensitiveDictionary Object ( [data:protected] => Array ( [access-control-allow-credentials] => true [access-control-allow-methods] => GET, POST, PUT, DELETE, OPTIONS [access-control-allow-origin] => https://weedmaps.com [access-control-expose-headers] => [access-control-max-age] => 1728000 [content-type] => application/json; charset=UTF-8 [date] => Thu, 27 Jul 2017 04:37:10 GMT [server] => nginx/1.4.6 (Ubuntu) [vary] => Origin [x-request-id] => 80e789df-9a6b-47af-9358-5b54626551e9 [x-runtime] => 0.008710 [content-length] => 34 ) ) [body] => {"status":404,"error":"Not Found"} [response] => Array ( [code] => 404 [message] => Not Found ) 

Solutions Collecting From Web of "Попытка получить запрос api с ошибкой 404"

Попробуйте использовать запрос GET вместо запроса POST. Заголовки указывают, что они разрешают только происхождение от weedmaps.com в запросе POST. Метод в WordPress – wp_remote_get () .

  function call_for_api() { $url='https://api-v2.weedmaps.com/api/v2/listings'; $response = wp_remote_get( $url, array( 'timeout' => 45, 'redirection' => 5, 'httpversion' => '1.0', 'blocking' => true, 'headers' => array( 'accept' => 'application/json', 'accept-encoding' => 'gzip, deflate, br', 'connection' =>'keep-alive' ), 'body' => null, 'cookies' => array(), 'compress' => false, 'decompress' => true, 'sslverify' => true, 'stream' => false, 'filename' => null, 'user-agent' => 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:54.0) Gecko/20100101 Firefox/54.0', ) ); if ( is_wp_error( $response ) ) { $error_message = $response->get_error_message(); echo "Something went wrong: $error_message"; } else { echo 'Response:<pre>'; print_r( $response ); echo '</pre>'; echo wp_remote_retrieve_body( $response ); } } function cf_shortcode() { ob_start(); call_for_api(); return ob_get_clean(); } add_shortcode( 'weed-list', 'cf_shortcode' );