【发布时间】:2016-02-22 01:38:30
【问题描述】:
我是 Docusign 的新手。我有一个开发人员帐户,并尝试使用 REST API 和 PHP 来建立与 API 的连接,但我偶然发现并出现错误,错误正在调用 Web 服务,状态为 0。下面是我的代码:
$username = "xxxxxx";
$password = "xxxxxx";
$integrator_key = "xxxxxxx";
// construct the authentication header:
$header = "<DocuSignCredentials><Username>" . $email . "</Username><Password>" . $password . "</Password><IntegratorKey>" . $integratorKey . "</IntegratorKey></DocuSignCredentials>";
$url = "https://demo.docusign.net/restapi/v2/login_information";
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, array("X-DocuSign-Authentication: $header"));
$json_response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
//echo $status;
if ( $status != 200 ) {
echo "error calling webservice, status is:" . $status;
exit(-1);
}
$response = json_decode($json_response, true);
$accountId = $response["loginAccounts"][0]["accountId"];
$baseUrl = $response["loginAccounts"][0]["baseUrl"];
curl_close($curl);
【问题讨论】:
-
希望
$username、$password和$integrator_key的值不是真正的生产值;如果是这样,您应该更改它们,因为它们将对任何人公开可见/可用。 -
您正在运行的代码非常常见,我的第一个想法是您位于防火墙后面,或者其他安全软件阻止了您的请求。你能确认是否有吗?验证的一种好方法是进入您的帐户首选项(我认为是在隐私下)并启用请求日志记录,然后通过代码提出请求并检查您的日志,看看是否有任何通过...
-
您是否尝试过通过 API 资源管理器使用您的凭据? iodocs.docusign.com
-
@Ergin 当您说“进入您的帐户首选项(我认为是在隐私下)并启用请求记录”时,您指的是我的 DocuSign 帐户中的帐户首选项吗?
-
@mikebz 我已经通过 API Explorer 测试了我的凭证,我相信我的凭证没有问题,因为它返回以下结果:{“loginAccounts”:[{“name”:“XXXX” ,“accountId”:“XXXX”,“baseUrl”:“demo.docusign.net/restapi/v2/accounts/XXXX”,“isDefault”:“true”,“userName”:“XXXX”,“userId”:“XXXX”,“email”:“XXXX” , "siteDescription": "" } ] }
标签: php api rest authentication docusignapi