Как настроить WordPress и WooCommerce API, чтобы при публикации я не получал ошибку CORS? - PullRequest
2 голосов
/ 25 мая 2020

Я пытаюсь опубликовать новый продукт с помощью WooCommerce API, но получаю сообщение об ошибке:

Доступ к выборке по адресу 'http://localhost/wordpress/wp-json/wc/v3/products from origin' http://localhost: 3000 'заблокировано политикой CORS: ответ на предполетный запрос не проходит проверку контроля доступа: он не имеет статуса HTTP ok.

Как установить правильно настроить WordPress и WooCommerce API, чтобы я не получил эту ошибку? 1020 *

WordPress httpd-app.conf:

RewriteEngine On
RewriteRule /<none> / [L,R]

<Directory "C:\Bitnami\wordpress-5.4.1-0/apps/wordpress/htdocs">
    Options +MultiViews +FollowSymLinks
    AllowOverride None
    Header set Access-Control-Allow-Origin "*"
    <IfVersion < 2.3 >
        Order allow,deny
        Allow from all
    </IfVersion>
    <IfVersion >= 2.3>
        Require all granted
    </IfVersion>


php_value memory_limit 512M



    RewriteEngine On
    RewriteBase /wordpress/
    RewriteRule ^index\.php$ - [S=1]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /wordpress/index.php [L]

    Include "C:\Bitnami\wordpress-5.4.1-0/apps/wordpress/conf/banner.conf"
</Directory>

<Directory "C:\Bitnami\wordpress-5.4.1-0/apps/wordpress/htdocs/wp-admin">
    Header set Access-Control-Allow-Origin "\*"
    Header set Access-Control-Allow-Methods "GET, OPTIONS, POST"
    Header set Access-Control-Allow-Headers "origin, x-requested-with, content-type, accept"
</Directory>

Include "C:\Bitnami\wordpress-5.4.1-0/apps/wordpress/conf/htaccess.conf"

Я понимаю, что это за ошибка CORS, но как мне решить ее в этом случае?

1 Ответ

2 голосов
/ 26 мая 2020

В файле functions.php вашей темы Wordpress добавьте следующее действие:

function add_cors_http_header(){
    header("Access-Control-Allow-Origin: *");
}
add_action('init','add_cors_http_header');

Также удалите backsla sh из последнего каталога блок

<Directory "C:\Bitnami\wordpress-5.4.1-0/apps/wordpress/htdocs/wp-admin">
    Header set Access-Control-Allow-Origin "*"
    Header set Access-Control-Allow-Methods "GET, OPTIONS, POST"
    Header set Access-Control-Allow-Headers "origin, x-requested-with, content-type, accept"
</Directory>
...