Jwt-auth: Header otorisasi tidak ditemukan

Dibuat pada 27 Nov 2019  ·  2Komentar  ·  Sumber: WP-API/jwt-auth

Halo, saya menggunakan ini dengan kelas Klien GuzzleHttp sebagai berikut:

$blogService = new Client([
            'base_uri' => $baseBlogUrl . '/wp-json/wp/v2/',
            'headers' => [
                'Authorization' => 'Bearer ' . $result['access_token']
            ],
            'debug' => true
        ]);

Ini menghasilkan kesalahan: {"code":"rest_authentication_no_header","message":"Authorization header was not found.","data":{"status":403}}

Debug untuk permintaan menunjukkan bahwa header otorisasi ada:

POST /wp-json/wp/v2/users HTTP/1.1
Authorization: Bearer ACCESS_TOKEN_HERE
User-Agent: GuzzleHttp/6.4.1 curl/7.29.0 PHP/7.4.0RC6
Content-Type: application/json

Komentar yang paling membantu

Hai,
mungkin telah menemukan beberapa solusi untuk ini.

Menambahkan 3 baris di baris .htaccess (seperti yang tampaknya HTTP_AUTHORIZATION jika tidak dihapus):

RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

sebagai berikut (di tempat-tempat khusus ini):

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
</IfModule>
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

Belum yakin apa yang terjadi ketika memperbarui beberapa plugin jika baris ini akan dihapus ...

Sunting : mungkin ada yang ditambahkan ke README ?
Juga, bertanya-tanya apakah ada cara untuk mengotomatiskan penambahan baris ini ke file .htaccess melalui pemasangan plugin...

Semua 2 komentar

Hai,
mungkin telah menemukan beberapa solusi untuk ini.

Menambahkan 3 baris di baris .htaccess (seperti yang tampaknya HTTP_AUTHORIZATION jika tidak dihapus):

RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

sebagai berikut (di tempat-tempat khusus ini):

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
</IfModule>
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

Belum yakin apa yang terjadi ketika memperbarui beberapa plugin jika baris ini akan dihapus ...

Sunting : mungkin ada yang ditambahkan ke README ?
Juga, bertanya-tanya apakah ada cara untuk mengotomatiskan penambahan baris ini ke file .htaccess melalui pemasangan plugin...

Hai,
mungkin telah menemukan beberapa solusi untuk ini.

Menambahkan 3 baris di baris .htaccess (seperti yang tampaknya HTTP_AUTHORIZATION jika tidak dihapus):

RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

sebagai berikut (di tempat-tempat khusus ini):

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
</IfModule>
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

Belum yakin apa yang terjadi ketika memperbarui beberapa plugin jika baris ini akan dihapus ...

Sunting : mungkin ada yang ditambahkan ke README ?
Juga, bertanya-tanya apakah ada cara untuk mengotomatiskan penambahan baris ini ke file .htaccess melalui pemasangan plugin...

Ini bekerja untuk saya juga. Bersulang.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat