【问题标题】:Looking for a Laravel passport 'client' usage example寻找 Laravel passport \'client\' 用法示例
【发布时间】:2023-01-18 08:41:57
【问题描述】:

我似乎找到了大量关于使用护照设置 laravel、使用护照设置 api/服务器的教程。使用 oauth 在该服务器上进行身份验证。甚至在 JSON 接口中设置客户端。但是在浏览了 google 结果页面和堆栈溢出问题之后,我还没有找到在 laravel 中使用 passport 设置“使用客户端”的示例。

有人能给我一个线索和/或给我一个关于你如何在 laravel 中使用护照的客户端部分的文档吗?

我使用 artisan 命令创建了一个客户端来与 etsy oauth2 api v3 对话。他们需要在初始交换中发送额外的 code_challenge 和 code_challenge_method 字段以获取代码。然后,当您获得代码时,您需要请求具有给定范围的特定访问令牌,偶尔请求刷新它们。然后使用令牌来执行各个请求。

authorization url: https://www.etsy.com/oauth/connect
query params:
    response_type="code"
    code_challenge_method="S256"
    redirect_uri=(local callback url)
    scope=(list of scopes)
    client_id={clientid}
    state={random nonce}

(返回代码)

令牌请求:getAuthorizationUrl(redirectrui,scopes,code,state)

我已经准备好构建参数数组的代码:

    $scope_list = implode(' ', EtsyToken::DEFAULT_SCOPES);
    $params = [
        'response_type'         => EtsyToken::DEFAULT_RESPONSE_TYPE,
        'client_id'             => env('ETSY_APP_KEYSTRING'),
        'redirect_url'          => self::getRedirectUri(),
        'scope'                 => $scope_list,
        'state'                 => $this->_token->state,
        'code_challenge'        => $this->_token->challenge,
        'code_challenge_method' => EtsyToken::CODE_CHALLENGE_METHOD
    ];

我已经设法让它在单独的(非 laravel)测试脚本中与 guzzle 一起工作。我什至准备好重定向 url 来捕获结果,并准备好一个方法/模型来获取和存储令牌详细信息。如果可能的话,我想使用护照来处理通信。我知道它甚至可以完成我构建令牌模型要做的大部分工作。

有人可以指导我更好地了解有关使用 laravel 护照客户端的文档和/或向我展示一个基本示例吗?

【问题讨论】:

    标签: laravel laravel-8 laravel-passport oauth2client


    【解决方案1】:

    有过类似的旅程,我只是认为没有。

    我也没有看到任何可以自信地作为强大的客户端提供的任何东西,它“可以”使用护照。我怀疑这是因为护照本身很难设置,除了像您所看到的那样的快乐路径清洁安装。

    【讨论】:

      猜你喜欢
      • 2020-10-04
      • 1970-01-01
      • 1970-01-01
      • 2012-02-25
      • 1970-01-01
      • 2017-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多