[英]Vuejs application api login call response gone wrong
The expected login api response is预期的登录 api 响应是
{"message":"success","data":{"id":2,"name":"name","email":"example@gmail.com","email_verified_at":null,"nrc":"12\/PABATA(N)7243942","phone_number":"234234234","account_status":"Active","created_at":"2021-01-05T13:37:08.000000Z","updated_at":"2021-01-05T14:44:08.000000Z","token":"189|1Z6MoqqnM8kd10phzweH0mbZY6CYlAvrkHih4R0G"}}
but the actual response from axios was但来自 axios 的实际响应是
{"email":"example@gmail.com","password":"fwefw324"}{"message":"success","data":{"id":2,"name":"UnionEA","email":"faroakkhan@gmail.com","email_verified_at":null,"nrc":"12\/PABATA(N)097238","phone_number":"09789333573","account_status":"Active","created_at":"2021-01-05T13:37:08.000000Z","updated_at":"2021-01-05T14:44:08.000000Z","token":"189|1Z6MoqqnM8kd10phzweH0mbZY6CYlAvrkHih4R0G"}}
I was also try from postman but the response got the same what I expected.我也尝试过 postman 但响应与我预期的相同。
JavaScript code is JavaScript 代码为
axios.post("/api/login", credentials).then((response) => {
console.log(response.data);
return dispatch("attempt", response.data.data.token);
});
Laravel code what i calling as api /api/login Laravel 代码我称之为 api /api/login
<?php
namespace App\Http\Controllers\Api\v1;
use App\Http\Controllers\Controller;
use App\Models\User;
use App\Traits\ResponserTrait;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
class LoginApiController extends Controller
{
use ResponserTrait;
public function login(Request $request)
{
$user = User::where('email', $request->email)->first();
if ($user && Hash::check($request->password, $user->password) &&
$user->account_status == config('enums.account_status')['INIT']) {
return $this-
>respondCreateMessageOnly(config('enums.account_status')['INIT']);
}
if (!$user || !Hash::check($request->password, $user->password))
{
return $this->loginFailed('invalid email or password');
} else {
$token = $user->createToken('login-user')->plainTextToken;
$user->token = $token;
return $this->respondCollection('success', $user);
}
}
}
if the response is a string.you can use this code to get the expected response.如果响应是一个字符串。您可以使用此代码来获得预期的响应。
JSON.parse("{"+response.split("}{")[1])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.