У кого-нибудь когда-нибудь возникали проблемы при встраивании церемонии подписания docusign в iFrame? Я пытаюсь проверить встраивание подписи docusign с помощью iFrame. Но браузеры (tested on Chrome, Firefox
) отказываются отображать URL-адрес.
Я получаю URL-адрес для вставки (который выглядит как https://demo.docusign.net/Signing/MTRedeem/v1/XXXXXXXXX?slt=XXX
) из DocuSign, а затем устанавливает этот URL-адрес в качестве источника iFrame на моем веб-сайте. Но он просто показывает, что на пустой странице ничего не появляется ( вместо встраивания в iframe, если я просто вставляю URL в строку url, это прекрасно отображает ). Если я проверяю логи консоли в Google Chrome (на win10), я вижу ошибку Refused to display 'https://account-d.docusign.com/recipient/auth?ui_locales=en' in a frame because it set 'X-Frame-Options' to 'sameorigin'
.
<iframe src='https://demo.docusign.net/Signing/MTRedeem/v1/XXXXXXXXX?slt=XXX' height='900' width='900'>
</iframe>
![iFrame blank page](https://i.stack.imgur.com/gliu5.png)
Если я наблюдаю за вкладкой сети, происходят следующие перенаправления:
Request URL: https://demo.docusign.net/Signing/MTRedeem/v1/XXXXXXXXX?slt=XXX
Request Method: GET
Status Code: 302 Found
Response Headers
Location: https://account-d.docusign.com/managed_token/v1/redeem/?slt=XXX
Request URL: https://account-d.docusign.com/managed_token/v1/redeem/?slt=XXX
Request Method: GET
Status Code: 302 Found
Response Headers
Location: https://demo.docusign.net/Signing/StartInSession.aspx?code=XXX
X-Frame-Options: SAMEORIGIN
Request URL: https://demo.docusign.net/Signing/StartInSession.aspx?code=XXX
Request Method: GET
Status Code: 302 Found
Response Headers
Location: https://demo.docusign.net/Signing/ActivateSecurityChecks.aspx?insession=1&ti=XXX
Request URL: https://demo.docusign.net/Signing/ActivateSecurityChecks.aspx?insession=1&ti=XXX
Request Method: GET
Status Code: 200 OK
Response Headers
Set-Cookie: BIGipDocuSign_Demo_Signing=XXX
X-DocuSign-Node: XXX
Request URL: https://account-d.docusign.com/recipient/auth?ui_locales=en
Request Method: GET
Status Code: 200 OK
Response Headers
X-Frame-Options: SAMEORIGIN
X-DocuSign-TraceToken: XXX
X-DocuSign-Node: XXX
Примечание: Я следовал этого образца из официальных примеров docusign.
РЕДАКТИРОВАТЬ RecipientViewRequest:
{
"AssertionId":"logging in event id",
"AuthenticationInstant":"1\/29\/2020 11:09:26 AM",
"AuthenticationMethod":"password",
"ClientUserId":"logged in user id",
"Email":"my-email@mydomain.com",
"ReturnUrl":"https:\/\/subdomain.mydomain.com\/recieve",
"UserName":"signerFirst lastName",
"XFrameOptions":"allow_from",
"XFrameOptionsAllowFromUrl":"https:\/\/subdomain.mydomain.com"
}
РЕДАКТИРОВАТЬ 2
Если я помню, метод внедрения работал для меня в прошлом во время тестирования. Такое поведение отказа от рендеринга в iFrame началось довольно недавно. Может быть, они изменились в конце прошлого месяца.