Norbert Kiss Norbert Kiss - 4 months ago 36
PHP Question

Can't authenticate with basic authentication using WP REST API 2.0 plugin

I'm having an issue with basic authentication.

Trying to send a GET request with Postman (chrome plugin) using the following url:
http://_MY_WEBSITE_URL_/wp-json/wp/v2/users/3

The username and the password field is filled with the site's admin user credentials.

The error I get:

{
"code": "rest_user_cannot_view",
"message": "Sorry, you cannot view this resource.",
"data": {
"status": 401
}
}


I tried the basic authentication using wp_remote_request from another website, and with CURL too, but the results are the same every time.

The user with id 3 exists, I have checked it. If I want to list all of the users, I get only those who have posts created.

I have activated the required plugins: WP REST API, JSON Basic Authentication.

My wordpress version: 4.4.2

Answer

Finally, I figured out the solution. I had to add some new options manually to my .htaccess file, the plugin didn't make it.

The code:

# BEGIN WP BASIC Auth
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /PluginTest/
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
</IfModule>
# END WP BASIC Auth