0

我正在尝试在 CodeIgniter 应用程序中调用 DocuSign REST 登录信息。Docusign 示例代码显示:

// Input your info here:
$integratorKey = '...';
$email = '...@....com';
$password = '...';
$name = 'John Doe';

// construct the authentication header:
$header = "<DocuSignCredentials><Username>" . $email . "</Username><Password>" . $password . "</Password><IntegratorKey>" . $integratorKey . "</IntegratorKey></DocuSignCredentials>";

/////////////////////////////////////////////////////////////////////////////////////////////////
// STEP 1 - Login (to retrieve baseUrl and accountId)
/////////////////////////////////////////////////////////////////////////////////////////////////
$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);

if ( $status != 200 ) {
    echo "error calling webservice, status is:" . $status;
    exit(-1);
}

我不断收到 0 的状态响应。当我回显 curl 时,所有 xml 标记都已转换为小写(这不适用于 Docusign)。有没有人在 CodeIgniter 中完成过这个调用?你是怎么做到的?我知道我的凭据很好,因为我可以执行命令行 curl 并获得响应。

4

1 回答 1

0

我不确定 CodeIgniter 在做什么以及为什么标签会被转换为小写,但你说得对,DocuSign 期望 xml 标签以大写字母开头,所以这可能不起作用。但是,您可以做的是使用 JSON 标头和请求正文。

例如,而不是像 XML 格式的身份验证标头

<DocuSignCredentials>
  <Username>username</Username>
  <Password>password</Password>
  <IntegratorKey>integrator_key</IntegratorKey>
</DocuSignCredentials>

您可以使用相应的 JSON 身份验证标头,例如

{
    "Username": "username",
    "Password": "password",
    "IntegratorKey": "integrator_key"
}

“节点”仍然以大写字母开头,但由于它不是 xml,我想知道 CodeIgniter 是否可能不理会它。可以在本页的 DocuSign 开发人员中心找到这方面示例

于 2013-09-11T17:43:58.447 回答