2015-04-11 3 views
0

Я пытался подключиться к API REST Woocommerce (используя HTTP Basic Auth), но не смог этого сделать.Соединение API REST API Woocommerce отклонено

Я, вероятно, делать вещи неправильно (первый таймер @ REST API), но вот то, что я делал:

  • Я использую GET с URL, состоящий из: https://example.com/wc-api/v2/
  • Я использую Authorization заголовок с ключом потребителя и секрет base64 кодируется

Я позволил REST Апи в настройках WooCommerce и включена защищенная проверка. Также я поместил некоторый продукт в магазин. Но всякий раз, когда я пытаюсь запустить URL-адрес, как описано выше; на соединение просто отказано.

У меня нет ошибки, но, похоже, страница не может быть достигнута. Кто-нибудь может мне помочь?

Я следил за документами (http://woothemes.github.io/woocommerce-rest-api-docs/#requestsresponses) до раздела «Аутентификация», но до сих пор я застрял до сих пор. Полный URL я использую:

http://[MYDOMAIN]/wc-api/v2/orders

С HTTP-заголовок выглядит как:

GET /wc-api/v2/ HTTP/1.1 Authorization: Basic [BASE64 encoded_key:BASE64 encoded_secret] Host: [MYDOMAIN] Connection: close User-Agent: Paw/2.1.1 (Macintosh; OS X/10.10.2) GCDHTTPRequest

Затем после того, как я запускаю запрос я получаю:

after following the url

+0

Вы не получили никаких ошибок? Даже не 404 или 403? Что произойдет, если вы попытаетесь подключиться к одному URL с помощью cURL или что-то в этом роде? –

+0

Нет, ничего не видя. Я использую клиент PAW REST для Mac (просто как удобство). –

+0

Итак, вы просто пытаетесь получить список заказов и запрос истекает? Есть ли что-нибудь в ваших журналах - PHP или Apache/nginx? По крайней мере, nginx/Apache получает запрос и обрабатывает его правильно? Если он передает правильный скрипт, попробуйте установить xdebug и посмотреть, где висит процесс.Полагаю, это может быть внешний запрос, который сам занимает много времени, чтобы ответить. –

ответ

1

Учитывая скриншот, который вы опубликовали, кажется, что сервер не отвечает на HTTPS. Поэтому вам нужно настроить свой веб-сервер для ответа на HTTPS-запросы, и для этого вам нужно будет установить сертификат SSL.

Вы можете либо генерировать самостоятельно, что бесплатно, но не будет работать для широкой публики. Или вы можете купить один - большинство регистраторов доменов, и хосты позволят вам купить сертификат, и они обычно начинаются со $ 50 в год.

+0

Использование Давайте зашифруем, чтобы получить бесплатный сертификат ssl. https://letsencrypt.org/ –

0

Я использую GET с адресом, состоящим из: https://example.com/wc-api/v2/

В этом примере вы используете HTTPS. Это где вы пытаетесь подключиться?

Я настоятельно рекомендую перейти прямо к соединению HTTPS. Это в тысячу раз легче выполнить. Documentation for over HTTPS can be found here. Следуйте инструкциям для «OVER HTTPS». Оттуда вы можете использовать что-то вроде Postman, чтобы проверить, хотите ли вы.

+0

Да, я пытаюсь использовать HTTPS (поскольку oAuth и HTTP слишком много хлопот). Я использую PAW REST Client для Mac, что похоже на использование Postman, я думаю. Там я создал следующие: 'GET/туалет-API/v2/заказов HTTP/1.1 Authorization: Basic [BASE64_key: BASE64_secret] Cookie: PHPSESSID = 923e2e08761a462ee7e5d980c7fcc87f Ведущий: [MY DOMAIN] Подключение: закрыть USER- Агент: Paw/2.1.1 (Macintosh; OS X/10.10.2) GCDHTTPRequest' Everthing между скобками, конечно же, заменено на то, что указано там. –

Смежные вопросы