использование docusign api создает конверты, ошибка: объект перемещен - PullRequest
0 голосов
/ 18 марта 2020

Я ознакомился с документацией по API и успешно отправил ее в api explorer-> Envelopes: create. Я также получил json & запрос пути и токен. Я использовал httpclient post в java и получил объект перемещен Объект перемещен сюда. Кто-нибудь знает, что я пропустил? `

    DocsignDocument docsignDocument = new DocsignDocument();
    docsignDocument.setDocumentBase64
    docsignDocument.setDocumentId("1");
    docsignDocument.setFileExtension("pdf");
    docsignDocument.setName("Test.pdf");
    list.add(docsignDocument);
    Recipients recipients = new Recipients();
    Signers signers = new Signers();
    signers.setEmail("xxxx");
    signers.setName("Qin");
    signers.setRecipientId("1");
    Signers signers1 = new Signers();
    signers1.setEmail("xxx@qq.com");
    signers1.setName("OYX");
    signers1.setRecipientId("2");
    List<Signers> signersList = new ArrayList<>();
    signersList.add(signers);
    signersList.add(signers1);
    recipients.setSigners(signersList);
    dataJson.put("documents",list);
    dataJson.put("emailSubject","TEST");
    dataJson.put("recipients",recipients);
    dataJson.put("status","sent");
    String data = dataJson.toJSONString();
    String results2 = HttpDocusignUtils.httpPostJson("https://account-d.docusign.com/restapi/v2.1/accounts/xxx/envelopes",access_token,data)`

после запроса:

 public static String httpPostJson(String uri, String token, String obj) {
    String result = "";
    try {
        CloseableHttpClient httpclient = HttpClients.createDefault();
        HttpPost httpPost = new HttpPost(uri);
        httpPost.addHeader("Content-Type", "application/json"); // 添加请求头
        httpPost.addHeader("Authorization","Bearer "+token);
       httpPost.addHeader("Accept-Encoding","gzip,deflate,sdch");
       httpPost.setEntity(new StringEntity(obj));
        System.out.println(httpPost);
        HttpResponse response = httpclient.execute(httpPost);
        HttpEntity entity = response.getEntity();
        if (entity != null) {
            InputStream instreams = entity.getContent();
            result = convertStreamToString(instreams);
            System.out.println(result);
        }
    } catch (Exception e) {
        e.getMessage();
    }
    return result;
}

Ответы [ 2 ]

1 голос
/ 18 марта 2020

https://account-d.docusign.com/restapi/v2.1/accounts/xxx/envelopes не является действительной конечной точкой DocuSign.

Сервер учетных записей (account-d.docusign.com) используется для получения токена и вызова UserInfo , чтобы определить правильный базовый URL-адрес для конкретной учетной записи.

Поскольку вы находитесь в демонстрационной среде, ваш базовый URL будет начинаться с https://demo.docusign.net

0 голосов
/ 18 марта 2020

Хорошо, одна проблема заключается в том, что модель документа в Java имеет значение Document из

import com.docusign.esign.model.Document;

Для отладки я предлагаю использовать DocuSign API logging особенность. Затем обновите ( edit ) свой вопрос, включив в него JSON, указанный в журнале.

Удалось ли запустить примеры кода для Java? См. eg-03- java -auth-code-grant

Также, пожалуйста, сообщите нам (редактируя свой вопрос), что вы пытаетесь сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...