Woocommerce Rest API 401 для NGINX

#wordpress #woocommerce #wordpress-rest-api

#wordpress #woocommerce #wordpress-rest-api

Вопрос:

Я видел много ссылок на эту проблему, охватывающую несколько лет, но 95% из них относится к Apache. Поэтому я использую NGINX, поэтому не могу попробовать решения, связанные с файлом .htaccess.

 {"code":"woocommerce_rest_cannot_view","message":"Sorry, you cannot list resources.","data":{"status":401}}
  

Поскольку ничто на самом деле не охватывает NGINX для этой проблемы, я подумал о запуске нового потока

Впервые это произошло, когда я попытался связать Woobotify, который автоматически генерирует свои собственные ключи. Хотя ключи были созданы, он говорит, что у него нет ошибки чтения / записи (несмотря на правильную настройку разрешений)

Итак, я создал новый набор ключей из WP и сделал прямой вызов (войдя в систему как администратор, конечно)

как в://site.com/wp-json/wc/v3/products/categories?consumer_key=ck_8a9b…etc чтобы узнать, было ли это на стороне сервера или Woobotify и все еще получало ошибку

Если вы отсылаете меня к http://woocommerce.github.io/woocommerce-rest-api-docs/#rest-api-keys Я слишком новичок, чтобы воспользоваться этой информацией. Мне либо нужен пошаговый, либо я готов нанять кого-нибудь, чтобы заставить его работать на меня.

LEMP-стек на самоуправляемых VPS

Ответ №1:

Вот пример того, как я решаю эту проблему

  require "woocommerce_api"

woocommerce = WooCommerce::API.new(
  "https://example.com",
  "consumer_key",
  "consumer_secret",
  {
    wp_json: true,
    version: "wc/v3",
    query_string_auth: true
  }
)
  

ИЛИ просто для POSTMAN

 https://example.com/wp-json/wc/v3/products?consumer_key={{csk}}amp;consumer_secret={{cs}}
  

Ключ — query_string_auth: true вам необходимо принудительно выполнить базовую аутентификацию как строку запроса true в HTTPS