使用nuxt auth和laravel passport登录时出现错误404
我正在用Laravel Passport进行身份验证,我的前端已经用nuxt实现了。 当使用nuxt Auth向后端发送请求时,我收到以下404错误: 我的nuxt身份验证和axios配置:使用nuxt auth和laravel passport登录时出现错误404,laravel,nuxt.js,laravel-passport,nuxt-auth,Laravel,Nuxt.js,Laravel Passport,Nuxt Auth,我正在用Laravel Passport进行身份验证,我的前端已经用nuxt实现了。 当使用nuxt Auth向后端发送请求时,我收到以下404错误: 我的nuxt身份验证和axios配置: axios: { baseURL: 'http://localhost:8000/', header:{ 'content-type':'application/json' } }, auth: { strategies: { larave
axios: {
baseURL: 'http://localhost:8000/',
header:{
'content-type':'application/json'
}
},
auth: {
strategies: {
laravelPassport: {
provider: 'laravel/passport', // Using nuxtAuth laravel passport provider
url: 'http://localhost:8000/',
clientId: '1',
client_secret: '****MPZAMzicKGjByb1hnTciqLScP7KUr7CyKgf', //Is the same as the value inside the database
grantType: 'password'
},
}
},
API_URL="http://localhost:8000"
PASSPORT_CLIENT_ID=************
PASSPORT_CLIENT_SECRET=***********************
this.$auth.loginWith("authMakeup", {
data: params
});
nuxt登录方法和数据
data() {
return {
login: {
username: '',
password: '',
},
}
},
methods: {
async loginMethod() {
await this.$auth.loginWith('laravelPassport',{ data: this.login })
},
},
Laravel API路线
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\Auth\LoginControlle;
use \App\Http\Controllers\Auth\SignupControlle;
Route::post('/login',LoginControlle::class);
Route::middleware('auth:api')->get('/user', function (Request $request) {
return $request->user();
});
axios: {
proxy: true,
baseURL: process.env.API_URL,
我有这个问题,一周后就解决了 在我看来,使用下面相同的代码:让我们编码;-) numxt.config.js
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\Auth\LoginControlle;
use \App\Http\Controllers\Auth\SignupControlle;
Route::post('/login',LoginControlle::class);
Route::middleware('auth:api')->get('/user', function (Request $request) {
return $request->user();
});
axios: {
proxy: true,
baseURL: process.env.API_URL,
},
},
},
在.env文件中:
axios: {
baseURL: 'http://localhost:8000/',
header:{
'content-type':'application/json'
}
},
auth: {
strategies: {
laravelPassport: {
provider: 'laravel/passport', // Using nuxtAuth laravel passport provider
url: 'http://localhost:8000/',
clientId: '1',
client_secret: '****MPZAMzicKGjByb1hnTciqLScP7KUr7CyKgf', //Is the same as the value inside the database
grantType: 'password'
},
}
},
API_URL="http://localhost:8000"
PASSPORT_CLIENT_ID=************
PASSPORT_CLIENT_SECRET=***********************
this.$auth.loginWith("authMakeup", {
data: params
});
使用:
axios: {
baseURL: 'http://localhost:8000/',
header:{
'content-type':'application/json'
}
},
auth: {
strategies: {
laravelPassport: {
provider: 'laravel/passport', // Using nuxtAuth laravel passport provider
url: 'http://localhost:8000/',
clientId: '1',
client_secret: '****MPZAMzicKGjByb1hnTciqLScP7KUr7CyKgf', //Is the same as the value inside the database
grantType: 'password'
},
}
},
API_URL="http://localhost:8000"
PASSPORT_CLIENT_ID=************
PASSPORT_CLIENT_SECRET=***********************
this.$auth.loginWith("authMakeup", {
data: params
});
若要按用户登录,则不需要在端点部分中使用覆盖令牌(&password)。
但我想通过手机登录,将其覆盖到自定义路由示例:
token : '/api/v1/confirmCode',
我的问题解决了,现在它给出了{invalid_grant}400错误