簡體   English   中英

Laravel AJAX請求路由api Vue錯誤

[英]Laravel AJAX Request into route api Vue error

我正在嘗試使用Vue使用auth中間件從API路由獲取數據來獲取ajax請求以獲取最近創建的問題。 我能夠在不檢查身份驗證的情況下讓它工作,但我需要它來檢查身份驗證並獲取創建請求的用戶ID。 我現在有這個。 我的觀點:

<script type="text/javascript">
$.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    }
});
</script>
<script src="/public/js/adminApp.js"></script>
<template id="messages-template">
  <div>
    <ul class="menu" v-for="messages in list">
      <li><!-- start message -->
        <a href="#">
          <div class="pull-left" style="margin-left: 9px;margin-right: 9px;">
            <i class="fa fa-pencil"></i>
          </div>
          <h4>@{{ messages && messages.name }}
            <small><i class="fa fa-clock-o"></i> 5 mins</small>
          </h4>
        </a>
      </li>
    </div>
  </div>
</template>
<script src="https://unpkg.com/vue/dist/vue.js"></script>
<script type="text/javascript" src="/public/js/messages.js">
</script>

我的api.php路線:

<?php

use Illuminate\Http\Request;

/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/
Route::group(['middleware' => ['auth:api']], function () {
  Route::get('/test', function (Request $request) {
    return App\issue::latest()->get();
  });
});

我的messages.js vue腳本:

Vue.component('messages', {
  template: '#messages-template',
  data: function (){
  return {
    list:[]
  };},
  created (){
    $.getJSON('/api/test', function(messages){
      this.list = messages;
    }.bind(this))
  }
});

new Vue({
  el: '#messagesArea'
});

我當前收到的錯誤消息是401並且路由正在回饋: {"error":"Unauthenticated."}

你寫:

'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')

這將查找名為csrf-token<meta>元素,並解析content 因此,要使其工作,您需要將該meta標記添加到文檔頭。 嘗試這個:

<meta id="token" name="csrf-token" content="{{ csrf_token() }}">

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM