如何使用Vuejs和Laravel获取当前经过身份验证的用户ID?

Mat*_*ane 0 javascript php authentication laravel vue.js

我使用Vuejs作为前端,我只是想从Laravel获取当前登录的用户ID并显示它。我该怎么做?

Thi*_*wes 14

另一种选择是与crsf令牌相同。

// header.blade.php
<meta name="user-id" content="{{ Auth::user()->id }}">

// main.js
Vue.prototype.$userId = document.querySelector("meta[name='user-id']").getAttribute('content');

// component

mounted() {
    console.log(this.$userId)
}
Run Code Online (Sandbox Code Playgroud)

  • 好吧,我觉得这个答案非常适合我。谢谢,但是最好像这样`@if(Auth :: check())&lt;meta name =“ user-id” content =“ {{Auth :: user()-&gt; id}}”&gt; @ endif` (3认同)
  • 如果用户并不总是登录,你也可以使用可选的像`&lt;meta name="user-id" content="{{ optional(Auth::user())-&gt;id }}"&gt;` (3认同)

小智 7

通过多种方式获取身份验证用户 ID阅读更多

Auth::user()->id;

Auth::id();
Run Code Online (Sandbox Code Playgroud)

通过 Vue.js

$http.get('api/user').then(response => {
   console.log(response.body);
})
Run Code Online (Sandbox Code Playgroud)

  • 你假设他有 vue 资源 (3认同)
  • 如果你想把它传递给一个 VueJS 元素,你可以使用 prop。例如`&lt;custom :user-id={{Auth::id()}}&gt;&lt;/custom&gt;` (2认同)