获取用户数据时出现未经身份验证的错误
Posted
技术标签:
【中文标题】获取用户数据时出现未经身份验证的错误【英文标题】:Unauthenticated error while fetching user data 【发布时间】:2021-07-14 02:45:24 【问题描述】:我使用 Laravel 作为端点,使用 Angular 作为前端来创建一个简单的应用程序,这个问题在我登录后显示我试图获得当前的身份验证 每次显示此消息“未经身份验证”时的用户数据
AuthController.php
class AuthController extends Controller
public function __construct()
$this->middleware('auth:api', ['except' => ['login', 'signup' ]]);
/**
* Get the authenticated User.
*
* @return \Illuminate\Http\JsonResponse
*/
public function userProfile()
$user = Auth::user();
return $user;
这是http调用的服务
import HttpClient, HttpResponse ,HttpHeaders from '@angular/common/http';
import Injectable from '@angular/core';
import TokenService from './token.service';
@Injectable(
providedIn: 'root'
)
export class HttpCallsService
constructor(private http:HttpClient,
private Token:TokenService,
)
userData()
return this.http.get('http://localhost:8000/api/profile');
配置文件组件
这就是我将请求集放入组件的方式
【问题讨论】:
您能分享一下您如何从前端发出请求(实际上该请求对象的样子)吗? @Tpojka 我编辑了我的问题 【参考方案1】:您以匿名身份发送请求 您必须在请求中指定身份验证
import HttpClient, HttpResponse ,HttpHeaders from '@angular/common/http';
import Injectable from '@angular/core';
import TokenService from './token.service';
@Injectable(
providedIn: 'root'
)
export class HttpCallsService
constructor(private http:HttpClient,
private Token:TokenService,
)
userData()
return this.http.get('http://localhost:8000/api/profile',
// Send the authentication token here
headers:
'Authorization': 'Bearer ' + userToken
);
【讨论】:
以上是关于获取用户数据时出现未经身份验证的错误的主要内容,如果未能解决你的问题,请参考以下文章
使用 Facebook Graph API 提取用户信息时出现身份验证错误
Firebase firestore 获取未经身份验证的用户文档