为了账号安全,请及时绑定邮箱和手机立即绑定

Microsoft Outlook - 添加自定义参数授权请求

Microsoft Outlook - 添加自定义参数授权请求

PHP
至尊宝的传说 2021-07-06 16:57:42
我正在使用 Microsoft Outlook rest php api 来验证帐户并获取用户事件。我想将自定义参数添加到重定向 URL 中。我没有找到将自定义参数添加到重定向 url 的任何方法。我正在使用这个 Outlook/rest/php api - 这是网址:https://docs.microsoft.com/en-us/outlook/rest/php-tutorial#implementing-oauth2这是我的控制器 AuthController.php。<?phpnamespace App\Http\Controllers;use App\Http\Controllers\Controller;class AuthController extends Controller{  public function signin()  {    if (session_status() == PHP_SESSION_NONE) {      session_start();    }    // Initialize the OAuth client    $oauthClient = new \League\OAuth2\Client\Provider\GenericProvider([      'clientId'                => env('OAUTH_APP_ID'),      'clientSecret'            => env('OAUTH_APP_PASSWORD'),      'redirectUri'             => env('OAUTH_REDIRECT_URI'),      'urlAuthorize'            => env('OAUTH_AUTHORITY').env('OAUTH_AUTHORIZE_ENDPOINT'),      'urlAccessToken'          => env('OAUTH_AUTHORITY').env('OAUTH_TOKEN_ENDPOINT'),      'urlResourceOwnerDetails' => '',      'scopes'                  => env('OAUTH_SCOPES')    ]);    // Output the authorization endpoint    echo 'Auth URL: '.$oauthClient->getAuthorizationUrl();    exit();  }public function gettoken(){  if (session_status() == PHP_SESSION_NONE) {    session_start();  }  // Authorization code should be in the "code" query param  if (isset($_GET['code'])) {    // Check that state matches    if (empty($_GET['state']) || ($_GET['state'] !== $_SESSION['oauth_state'])) {      exit('State provided in redirect does not match expected value.');    }请为我提供一些如何添加自定义参数的建议。我需要使用 user_id 添加自定义参数。
查看完整描述

2 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

您无法在进行身份验证时,Microsoft 会将重定向 url 与 Microsoft App 中注册的重定向 url 进行比较,如果它们不同,则他们请求被拒绝。

我的建议是在您的应用程序中捕获身份验证端点,然后根据来自 /me 端点的用户数据根据需要进行重定向。


查看完整回答
反对 回复 2021-07-09
  • 2 回答
  • 0 关注
  • 187 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信