DocuSign Embedded返回超时异常?

时间:2016-05-25 05:39:45

标签: php digital-signature docusignapi

我一直在使用Docusign使用下面的PHP代码在我的UI中嵌入签名。我已经给出了正确的凭证,

public function sign(){
                $username = "sample@sample.com";
                $password = "sample";
                $integrator_key = "1fsfd0658-zv95-4317-a016-d9f76eaasdff9";
                // DocuSign environment we are using
        $host = "https://demo.docusign.net/restapi";
        // create a new DocuSign configuration and assign host and header(s)
        $config = new \DocuSign\eSign\Configuration();
        $config->setHost($host);
        $config->addDefaultHeader("X-DocuSign-Authentication", "{\"Username\":\"" . $username . "\",\"Password\":\"" . $password . "\",\"IntegratorKey\":\"" . $integrator_key . "\"}");
        // instantiate a new docusign api client
        $apiClient = new \DocuSign\eSign\ApiClient($config);
        // we will first make the Login() call which exists in the AuthenticationApi...
        $authenticationApi = new \DocuSign\eSign\Api\AuthenticationApi($apiClient);
        // optional login parameters
        $options = new \DocuSign\eSign\Api\AuthenticationApi\LoginOptions();
        // call the login() API
            echo "djfnksd";
        $loginInformation = $authenticationApi->login($options);
        // parse the login results
        if(isset($loginInformation) && count($loginInformation) > 0)
        {
            // note: defaulting to first account found, user might be a 
            // member of multiple accounts
            $loginAccount = $loginInformation->getLoginAccounts()[0];
            if(isset($loginInformation))
            {
                $accountId = $loginAccount->getAccountId();
                if(!empty($accountId))
                {
                    echo "Account ID = $accountId\n";
                }
            }
        }
            }

但是在调用该方法时会出错,

ApiClient.php第233行中的ApiException:    对https://demo.docusign.net/restapi/v2/login_information的API调用已超时:

{
    "url": "https:\/\/demo.docusign.net\/restapi\/v2\/login_information",
    "content_type": null,
    "http_code": 0,
    "header_size": 0,
    "request_size": 0,
    "filetime": -1,
    "ssl_verify_result": 1,
    "redirect_count": 0,
    "total_time": 1.046,
    "namelookup_time": 0.515,
    "connect_time": 0.78,
    "pretransfer_time": 0,
    "size_upload": 0,
    "size_download": 0,
    "speed_download": 0,
    "speed_upload": 0,
    "download_content_length": -1,
    "upload_content_length": -1,
    "starttransfer_time": 0,
    "redirect_time": 0,
    "redirect_url": "",
    "primary_ip": "162.248.186.25",
    "certinfo": [],
    "primary_port": 443,
    "local_ip": "192.168.1.12",
    "local_port": 53163
}

我无能为力,可能出现什么错误?

1 个答案:

答案 0 :(得分:2)

现在正在运作。我通过删除ApiClient.php中的ssh验证解决了这个问题。 通过评论以下行

// disable SSL verification, if needed
   // if ($this->config->getSSLVerification() == false) {
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
    //}