首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >落叶松返回401未经授权

落叶松返回401未经授权
EN

Stack Overflow用户
提问于 2021-06-17 09:41:30
回答 1查看 579关注 0票数 0

上下文:

我需要在我的网站上创建一个SPA页面,它基本上是一个用户插入其社交号码的投票页面,当单击start按钮时,我需要登录我为投票创建的一个用户,使用Sanctum,并获得下一个Ajax请求的令牌。

问题:

  1. I不能使用Auth::对用户进行身份验证:因为它必须不能访问网站,只有这个页面,我如何才能让用户在控制器中访问?它附带了请求?
  2. I向一个函数发出请求,该函数验证社会号码输入,然后为有表决权的用户创建一个令牌,并在请求中返回并保存它,但是当我提出另一个请求并在授权标头中发送令牌时,它总是给我401个未经授权的错误。

验证社交号码和返回令牌函数:

代码语言:javascript
运行
复制
 public function verifyNIF(Request $request){
    $nif = $request->nif;
    $slug = $request->slug;

    //TODO:validates NIF in DB

    $user = CbsHelpers::getInPersonUser();


    $token = $user->createToken('in-person-token')->plainTextToken;


    return response()->json([
        'user' => $user,
        'token' => $token,
    ]);



}

授权头中带有令牌的Ajax请求(返回401未经授权)

代码语言:javascript
运行
复制
 function voteInPerson(topic){
    let topicId = topic.data('topic-id');
    $.ajax({
        url: "/vote",
        type: "POST",
        headers: {
            Authorization: 'Bearer '+token
        },
        data: {

            slug: slug,
            topicId: topicId,
        },
        success: function (data) {
            if (data === "no available votes" && topic.hasClass("not-voted")) {
                showWarningModal(data);
            }
            else {
              changeTopicVote(topic, data);
            }
        },
        error: function (data) {
            if (data.status === 401)
                showWarningModal("login needed");
        }
    });
}
EN

回答 1

Stack Overflow用户

发布于 2021-06-17 11:13:49

问题是路由被设置为中间件(‘auth’),而不是'auth:sanctum‘。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68016789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档