Laravel Passport basic api auth returns “error”:“i

2019-06-04 04:58发布

问题:

The Problem

I've been trying to use Laravel Passport and I'm countinously getting the error {"error":"invalid_client","message":"Client authentication failed"}. I have used it in this Android and Laravel project but I just can register the user correctly as I see the proper data in the database. Then when the Android app tries to get the access token it crashes because the server return the previous error message.

I have also been following this YouTube tutorial exactly as it is explained but I got this error at the part it sends the "access token request".

Postman data

oauth_clients table


What I have tried

I have tried to fix this using this Stack Overflow page, this GitHub and many other webpages page but nothing worked

Possible cause

  • I think that it might be the uncompatibility of my laravel version and passport (see below). I have manually changed laravel version to 5.4 but I got a composer error. I don't want to reinstall laravel because i think I could crash all my laravel projects.

  • The 'user_id' column has to be populated by laravel (I have manually changed it to the user_id of the user and after that I restored it to zero)


How to print data to the console? I use error_log() but I can't print variable names and with dd()I get and error saying that the variable couldn't be converted to string.

回答1:

Have ever tried configurations like this:? client_id and "client_secret" instead client_password. Your data in param it's the same one that you posted on print "oauth_clients table", right, but I think so your problem is this param "client_password", I never ever seen before this way!



回答2:

  1. you have to wrong pass client_id and client_password
  2. if you have to right pass client_id and client_password then check in the database table oauth_clients client_id and client_password is row inserted or not if not added then run this command in console

php artisan passport:client

this will register client_id and client_password and then check that in this table(oauth_clients) if not added then maunally added client_id and client_passsword