shiji
V2EX  ›  PHP

Laravel Passport, 跟大家分享我的狗血经历。

  •  
  •   shiji · Jan 14, 2019 · 7057 views
    This topic created in 2851 days ago, the information mentioned may be changed or developed.
    Laravel 和 Passport 都是最新版的。

    最近想搞个 API, 用过 Password Grant Tokens 和 Personal Access Tokens。
    全部都是 401 "message": "Unauthenticated."

    我在这上面浪费了不止三天了。 搜遍中英全网,尝试了所有可能的解决方案,都是无果。

    就在刚刚,找到了问题的所在:欢迎大家鄙视

    图一,用用户名密码换取 Access Token




    图二,粘贴到 Bearer






    图三 谜底揭晓





    一个小小的句点,我习惯于双击取词复制,没成想里面是可以有句点的。。。

    哎。
    16 replies  •  2019-01-14 12:34:29 +08:00
    xnode
    xnode
    Jan 14, 2019
    1
    我选择用了 jwt passport 看的我头疼
    justudy
    justudy
    Jan 14, 2019
    2
    基础不扎实,jwt 都没搞清楚原理
    justudy
    justudy
    Jan 14, 2019
    3
    可能你现在都不知道为什么有二个点分割成三部分
    AngryPanda
    AngryPanda
    Jan 14, 2019 via Android
    4
    通常来说,两个点分割为三个部分的 bearer token 就是 jwt bearer
    xfcy
    xfcy
    Jan 14, 2019 via Android
    5
    不是必须有句点的么😰
    baijunyao
    baijunyao
    Jan 14, 2019❤️1
    6
    浪费的三天是你欠下的 OAuth 和 JWT 知识债;这个锅真不能甩给 laravel passport ;
    miaotaizi
    miaotaizi
    Jan 14, 2019 via iPhone
    7
    感谢分享…
    不对,你分享了啥?
    自己的坑?
    atlantic2477
    atlantic2477
    Jan 14, 2019
    8
    看到楼上兄弟们的正解我基本就放心了。
    至于楼主的 “搜遍中英全网,尝试了所有可能的解决方案,都是无果。”,这个锅确实应该你自己来背
    zn
    zn
    Jan 14, 2019
    9
    三天不至于吧,单步调试跟踪进去,耐心点,顶多半个小时就找到出错的根源了。
    shiji
    shiji
    OP
    Jan 14, 2019
    10
    @baijunyao
    @justudy
    我印象里的 Access Token 是没有固定格式的。具体怎么生成没有官方的标准。JWT 只是生成 access token 的方式之一吧。
    还是我理解错了? OAuth 的 Access Token 必须要有两个点? Access Token 必须要用 JWT 生成?
    masker
    masker
    Jan 14, 2019 via Android
    11
    日常甩锅。
    jzmws
    jzmws
    Jan 14, 2019
    12
    JWT 的呀!!!
    baijunyao
    baijunyao
    Jan 14, 2019
    13
    @shiji laravel passport 生成的 token 是 jwt 格式的; 而 jwt 的特征就是两个点;因为你不熟悉 jwt ;所以会觉得这个点坑了你;
    AngryPanda
    AngryPanda
    Jan 14, 2019 via Android
    14
    @shiji 你是对的。
    shiji
    shiji
    OP
    Jan 14, 2019
    15
    @baijunyao 嗯,我刚刚看了,这方面确实不够熟悉。 以前光知道 jwt 是一种让服务端免去 session 维护的方案。。
    ericgui
    ericgui
    Jan 14, 2019
    16
    jwt.io

    了解一下。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1299 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 48ms · UTC 21:11 · PVG 05:11 · LAX 13:11 · JFK 16:11
    ♥ Do have faith in what you're doing.