Я только что установил свежий WP на сервер разработки. Я пытаюсь аутентифицироваться в остальном api (плагине, так как это wp v.4.6.3) с помощью приложения ionic / angularjs, которое находится на моем компьютере / устройстве. В настоящее время используется подключаемый модуль JWT Authentication для WP-API. Это мой заголовок с помощью плагинов HTTP-заголовков:
content-encoding: gzip
x-powered-by: php/5.5.9-1ubuntu4.21
connection: keep-alive
content-length: 3361
keep-alive: timeout=5, max=95
access-control-allow-headers: accept, authorization, cache-control, cookie, content-type, origin
server: apache/2.4.7 (ubuntu)
x-frame-options: allow-from *
vary: accept-encoding
access-control-allow-methods: get, post, options, head, put, delete, trace, connect, patch
content-type: text/html; charset=utf-8
access-control-allow-origin: *
access-control-expose-headers: cache-control, cookie, content-type, origin
cache-control: no-cache, must-revalidate, max-age=0
Независимо от того, что я делаю, я получаю ошибку CORS. Самый последний:
Поле заголовка запроса Content-Type не разрешено Access-Control-Allow-Headers в предпечатном ответе.
Плагин JWT также имел в документации упоминание о редактировании .htaccess и wp-config.php, что я и сделал. Пробовал несколько комбинаций htacces edit и / или плагинов. Но появляется такая же или похожая ошибка.
Это мой код, основанный на документации плагина JWT (учетные данные / URL-адрес действительны!):
var apiHost = 'http://dev.imok.ro/authworks/wp-json';
$http.post( apiHost + '/jwt-auth/v1/token', {
username: 'admin',
password: 'admin!@#'
})
.then( function( response ) {
console.log( 'siker', response.data )
})
.catch( function( error ) {
console.error( 'Errorrrr', error );
});
.htaccess:
#<ifModule mod_headers.c>
# Header always set Access-Control-Allow-Origin: *
## Header always set Access-Control-Allow-Methods "POST, GET, PUT, DELETE, OPTIONS"
## Header always set Access-Control-Allow-Headers "content-type"
#</ifModule>
<IfModule mod_rewrite.c>
#SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
RewriteEngine on
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
RewriteEngine On
RewriteBase /authworks/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /authworks/index.php [L]
</IfModule>
Спасибо за вашу помощь! Магор