问题
my requirement is: on the website, users can click the sign button on the [Our] platform to directly pop up the document to be signed and sign on the document
At present, according to the DocuSign embedded sending and signing document, we use JWT + admin authorization method to obtain access_ The user can open and sign the document URL through the document "envelopeviews: create recipient",
Question:
If we directly copy the DocuSign URL and open it in the browser, the page will correctly display the document page to be signed. If the signature URL is embedded in the platform web page, DocuSign will directly redirect to the "envelopeviews: createrecipient" to submit the returnurl address, and the parameter event = send
Did I do anything wrong
Here are some details:
List<Signers> signersList = new ArrayList<>();
signersList.add(signers);
signersList.add(signers1);
Recipients recipients = new Recipients();
recipients.setSigners(signersList);
dataJson.put("documents",docsignDocumentList);
dataJson.put("emailSubject",propertyName);
dataJson.put("recipients",recipients);
dataJson.put("status","sent");
String data = dataJson.toJSONString();
String envelopesJson = HttpDocusignUtils.httpPostJson("https://demo.docusign.net/restapi/v2.1/accounts/xxxx/envelopes",access_token,data);
log.info("envelopesJson:{}",envelopesJson);
JSONObject json_test = JSONObject.parseObject(envelopesJson);
String envelopeId=json_test.get("envelopeId").toString();
log.info("envelopeId:{}",envelopeId);
String Url="https://xxxxxx.com/?propertyId={propertyIdTemp}".replace("{propertyIdTemp}",propertyId);
JSONObject recipient_data = new JSONObject();
recipient_data.put("userName",signers.getName());
recipient_data.put("email",signers.getEmail());
recipient_data.put("recipientId","1");
recipient_data.put("clientUserId","2");
recipient_data.put("authenticationMethod","None");
recipient_data.put("returnUrl",Url);
System.out.println("sender_data==========="+recipient_data.toJSONString());
String results_recipient = HttpDocusignUtils.httpPostJson("https://demo.docusign.net/restapi/v2.1/accounts/xxxx/envelopes/{envelopeIdTemp}/views/sender".replace("{envelopeIdTemp}",envelopeId),access_token,recipient_data.toJSONString());
JSONObject results_senderJson = JSONObject.parseObject(results_recipient);
回答1:
It can be used normally. I have to request URL error. The correct one should be: "https://demo.docusign.net/restapi/v2.1/accounts{accountId}/envelopes/{envelopeId}/views/recipient " I used "https://demo.docusign.net/restapi/v2.1/accounts{accountId}/envelopes/{envelopeId}/views/sender"
回答2:
Yes, these are two different endpoints. One for the sender and one for a recipient (signer). In either case, it's the embedded view that you can use from your app. You then specify where to redirect once signing (or sending) is complete.
来源:https://stackoverflow.com/questions/62875909/docusignembedded-signature-cannot-display-the-signature-page-normally