使用Web路由登录,但无法通过api路由进行身份验证

时间:2019-10-08 03:57:09

标签: php laravel laravel-5.7

复制了Laravel using web authentication in all api routes redirect to home

我不知道要在Google上搜索的关键字,因此对某些愚蠢的事情感到抱歉。我使用网络路由加载视图,并使用api路由加载json数据,如下所示:

  • /商店/类别
  • / api / shop / categories

我使用网络路由登录,并且auth中间件检查没问题,我可以通过auth()-> user()-> name获得用户名。但是,当我使用/ api / shop / categories调用jquery ajax时,出现错误“ Authenticated。”,我尝试添加中间件auth:api,但没有任何变化。我阅读了文档,看到必须包含api_token url。 通过网络路由,中间件检查登录后如何使用api?

这是我的一些代码:

<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet"/>
<body>
  <!--Navigation-->
  <nav class="navbar navbar-expand-md navbar-light bg-light fixed-top">
    <div class="container-fluid">
      <img class="navbar-brand" src="http://placekitten.com/200/200" alt="KAJ Construction Logo"/>
      <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation">
        <span class="navbar-toggler-icon"></span>
      </button>
      <div class="collapse navbar-collapse" id="navbarResponsive">
        <ul class="navbar-nav ml-auto">
          <li class="nav-item active">
            <a class="nav-link" href="#section-Services" >Services</a>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="#section-Gallery" >Gallery</a>
          </li>
          <li class="nav-item">
            <a class="nav-link" href="#section-Contact" >Contact Us</a>
          </li>
        </ul>
      </div>
    </div>
  </nav>
  <main>
  <h1>Our Services</h1>
  </main>

2 个答案:

答案 0 :(得分:0)

也许您的请求标头中缺少授权。

答案 1 :(得分:0)

如果要从经过身份验证的用户获取数据,但要从经过身份验证的api获取数据。您应该使用auth('guard-name')