我正在尝试在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的状态响应。当我回应卷曲时,所有xml标签都已转换为小写(这对Docusign不起作用)。有没有人在CodeIgniter中完成此调用?你是怎么做到的?我知道我的凭据很好,因为我可以执行命令行卷曲并获得响应。
答案 0 :(得分: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 Developer Center上的this page。