Nous essayons de déterminer si Nous avons une application UI5 qui sera utilisée pour signer des documents. Nous avons créé un modèle dans l'instance de démonstration de Cependant, lorsque nous essayons de créer une enveloppe à partir de l'application, nous obtenons dans l'application UI5: P> docusign code> peut être utilisé dans des scénarios de production pour nos besoins de client.
docusign code>. P>
400 error code>
Impossible d'analyser le corps de MultiPart code>. Maintenant, la même charge utile lorsqu'elle est utilisée dans l'application Postman, vous trouverez dans l'enveloppe de création avec succès. Les en-têtes passés sont également les mêmes. P>
var settings = {
"async": true,
"crossDomain": true,
"url": "/docusign/envelopes",
"method": "POST",
"timeout": 0,
"headers": {
"Authorization": "User DnVj27euWrCi4ANoMV5puvxVxYAcUCG3PlkUSpWpC08=, Organization 6ba64ce816dec995b17d04605e329a30, Element X4XuUq/T5UUh2o9xwaamZCCRwOKUCPr1Kv1Nj+qHPj0=",
"Content-Type": "application/json"
},
"data": JSON.stringify({
"status": "sent",
"compositeTemplates": [{
"compositeTemplateId": "1",
"inlineTemplates": [{
"recipients": {
"signers": [{
"email": "johndoe@testmail.com",
"name": "John Doe",
"recipientId": "1",
"roleName": "Signer",
"clientUserId": "12345",
"tabs": {
"textTabs": [{
"tabLabel": "firstName",
"value": "John"
}, {
"tabLabel": "lastName",
"value": "Doe"
}, {
"tabLabel": "phoneNo",
"value": "022-635363"
}, {
"tabLabel": "email",
"value": "test@gmail.com"
}]
}
}]
},
"sequence": "1"
}],
"serverTemplates": [{
"sequence": "1",
"templateId": "0bf97611-a457-4e8e-ac7e-1593c17ba3f6"
}]
}]
})
};
var deferred = $.Deferred();
$.ajax(settings).done(function (response) {
deferred.resolve(response);
}.bind(this)).fail(function (error) {
deferred.reject(error);
}.bind(this));
3 Réponses :
Pourriez-vous régler en dehors des paramètres JSON et peut-être casser votre appel un peu avant de tout placer dans les paramètres.
I.e. Essayez de redéfinir votre appel JQuery Ajax Call: P>
var headers = {"Authorization": "User DnVj27euWrCi4ANoMV5puvxVxYAcUCG3PlkUSpWpC08=, Organization 6ba64ce816dec995b17d04605e329a30, Element X4XuUq/T5UUh2o9xwaamZCCRwOKUCPr1Kv1Nj+qHPj0=", "Content-Type": "application/json" }; var payload = JSON.stringify({ "status": "sent", "compositeTemplates": [{ "compositeTemplateId": "1", "inlineTemplates": [{ "recipients": { "signers": [{ "email": "johndoe@testmail.com", "name": "John Doe", "recipientId": "1", "roleName": "Signer", "clientUserId": "12345", "tabs": { "textTabs": [{ "tabLabel": "firstName", "value": "John" }, { "tabLabel": "lastName", "value": "Doe" }, { "tabLabel": "phoneNo", "value": "022-635363" }, { "tabLabel": "email", "value": "test@gmail.com" }] } }] }, "sequence": "1" }], "serverTemplates": [{ "sequence": "1", "templateId": "0bf97611-a457-4e8e-ac7e-1593c17ba3f6" }] }] }); $.ajax({ "async": true, "crossDomain": true, "url": "/docusign/envelopes", "method": "POST", "timeout": 0, "headers": headers, "data": payload });
Salut Bernard. J'ai essayé le code ci-dessus et j'ai toujours la même erreur.
Si le JSON Probablement le système UI5 envoie l'API sous la forme d'une demande de plusieurs pièces MIME, mais ne définit pas le type de contenu pour la partie de demande JSON correctement. p>
Pour vérifier: Utilisez le Docusign API Logger < / a> Voir ce qui est reçu par Docusign. Comparer entre la demande étant envoyée de l'UI5 et de Postman. P>
Pour corriger: vous devrez définir des paramètres supplémentaires UI5 afin que la demande ne soit pas envoyée sous forme de message MIME à plusieurs parties. Ou envoyer le message multi-pièces avec les paramètres nécessaires. Voir le Docs et Voir un Exemple de plusieurs parties . < / p>
PS S'il vous plaît poster une réponse à votre question avec la solution à votre problème (une fois que vous avez trouvé cela) aidez les autres à l'avenir. Merci!! p>
J'ai pu résoudre le problème en utilisant directement l'API docusign ( HTTPS: // Démo .docusign.net / restapi / v2 / comptes ). J'étais plus tôt en utilisant le SAP OpenConnector pour vous connecter à Docusign. https: //api.openconnectors.eu3.ext.hacanatrial. Ondemand.com/elements/api-v2 p>
Merci tout pour l'aide. P>
Comparez les valeurs d'en-tête lorsqu'elles sont envoyées de Postman et sont appelées depuis votre application. Le code ci-dessus a «Type de contenu»: «Application / JSON» et ce n'est pas multiparti, partagez le journal exact avant de frapper Docusign. Ou vous pouvez capturer les journaux DS comme expliqué par Larry.