我正在尝试在NuxtJS中实现Register User
。但是,我遇到了如下问题
供应商/laravel/framework/src/Illuminate/Routing/RouteCollection.php
In My api Route
Route::post('register', 'V1\Auth\LoginController@register');
我尝试将其更改为get method
,并通过127.0.0.1:8000/api/register
对其进行正常工作。
我仍然不知道,为什么我得到这个POST http://127.0.0.1:3000/api/register 404 (Not Found)
In My Nuxtjs
async registerUser() {
try {
await this.$axios.post(`api/register`, this.auth);
await this.$auth.login({
data: {
email: this.auth.email,
password: this.auth.password,
}
})
.then(res => {
console.log(res);
this.loading = false
// this.$router.push(`/auth/login`);
})
.catch(err => {
this.loading = false
this.$refs.form.validate(err.response.data.errors)
console.log(err.response);
})
} catch(e) {
// statements
console.log(e);
}
[In My Controller
public function register(Request $request)
{
$request->validate([
'name' => 'required',
'email' => 'required|email',
'password' => 'required|between:6, 25',
]);
$user = new User();
$user->name = $request->name;
$user->email = $request->email;
$user->password = bcrypt($request->password);
$user->save();
return response()->json(['registered' => true ]);
}
感谢您的帮助。谢谢。
您正在axios中使用3000端口http://127.0.0.1:3000/api/register
,但是laravel使用8000 http://127.0.0.1:8000/api/register
您必须在NuxtJS APP中建立API基础URL。
原因是您的NuxtJS应用设置默认为它自己的基本URL但是您必须为laravel API配置后端URL。
示例,
尝试一下
await this.$axios.post(`http://127.0.0.1:8000/api/register`, this.auth);