Docusign-授权码授予-获取访问令牌时未执行重定向uri

时间:2020-06-02 21:51:29

标签: php curl docusignapi

问题:在获取访问令牌时,DocuSign似乎忽略了HTTP标头中设置的redirect_uri。

对于上下文,我正在使用PHP和cURL。当我发送cURL请求时,授权成功,因为我确实获得了访问令牌和刷新令牌。唯一的问题是,授权成功后,DocuSign不会像应该执行的那样执行重定向。

这是PHP-cURL代码,来自Postman,我也在代码中使用。为了简洁起见,我缩短了某些字符串。 redirect_uri参数在CURLOPT_POSTFIELDS中:

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://account-d.docusign.com/oauth/token",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "grant_type=authorization_code&code=eyJ0eXAiOiJ...UDa8uJ9A&redirect_uri=http%3A//localhost/docusign/getData.php",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/x-www-form-urlencoded",
    "Authorization: Basic NTYxN...DkxMA==",
    "Cookie: __RequestVerificationToken=ARmOPr...tg0B0"
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
?>

我一直遵循以下DocuSign文档,以遵循授权码授予流程:https://developers.docusign.com/esign-rest-api/guides/authentication/oauth2-code-grant

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

API在步骤2中未使用重定向URI进行重定向。 登录后,仅在步骤1中将用户重定向到您的URL。 我不确定文档是否另有建议,如果导致混乱,我们可以修复它。