C# 为什么我必须导航到生成的;编辑「;URL两次后才能正确重定向?

C# 为什么我必须导航到生成的;编辑「;URL两次后才能正确重定向?,c#,docusignapi,C#,Docusignapi,我目前正在代表一个用户发送一个信封(我们称他们为用户1),并添加一个编辑器角色作为该信封的第一个收件人(我们称他们为用户2)。发送信封后,我尝试为用户2创建一个编辑器视图 当我为用户2创建编辑器视图时,第一次使用URL时,它会自动重定向到提供的returnUrl,而不是该信封的编辑器视图 为什么会发生这种情况? 如果我第二次使用完全相同的URL,它会按预期重定向到编辑器视图 下面的示例: POST: https://demo.docusign.net/restApi/v2/accounts/A

我目前正在代表一个用户发送一个信封(我们称他们为用户1),并添加一个编辑器角色作为该信封的第一个收件人(我们称他们为用户2)。发送信封后,我尝试为用户2创建一个编辑器视图

当我为用户2创建编辑器视图时,第一次使用URL时,它会自动重定向到提供的
returnUrl
,而不是该信封的编辑器视图

为什么会发生这种情况?

如果我第二次使用完全相同的URL,它会按预期重定向到编辑器视图


下面的示例:

POST: https://demo.docusign.net/restApi/v2/accounts/AccountId/envelopes/50545884-35da-4735-b076-f07883450146/views/edit
HEADER: X-DocuSign-Authentication {"Username":"API Account", "Password":"API Password", "SendOnBehalfOf": "User 2 Email", "IntegratorKey":"Integration Key"}
Content-Type: application/json
Body: {  "returnUrl": "https://www.google.com/" }
{
    "url": "https://demo.docusign.net/Member/StartInSession.aspx?StartConsole=1&t=5dd34549-b5a1-4ccf-b039-243ce06e264d&DocuEnvelope=50545884-35da-4735-b076-f07883450146&send=1"
}
我正在编写的代码使用C#API,但是,为了简单起见,我包含了一个简单的请求,它复制了完全相同的问题

请求:

POST: https://demo.docusign.net/restApi/v2/accounts/AccountId/envelopes/50545884-35da-4735-b076-f07883450146/views/edit
HEADER: X-DocuSign-Authentication {"Username":"API Account", "Password":"API Password", "SendOnBehalfOf": "User 2 Email", "IntegratorKey":"Integration Key"}
Content-Type: application/json
Body: {  "returnUrl": "https://www.google.com/" }
{
    "url": "https://demo.docusign.net/Member/StartInSession.aspx?StartConsole=1&t=5dd34549-b5a1-4ccf-b039-243ce06e264d&DocuEnvelope=50545884-35da-4735-b076-f07883450146&send=1"
}
响应:

POST: https://demo.docusign.net/restApi/v2/accounts/AccountId/envelopes/50545884-35da-4735-b076-f07883450146/views/edit
HEADER: X-DocuSign-Authentication {"Username":"API Account", "Password":"API Password", "SendOnBehalfOf": "User 2 Email", "IntegratorKey":"Integration Key"}
Content-Type: application/json
Body: {  "returnUrl": "https://www.google.com/" }
{
    "url": "https://demo.docusign.net/Member/StartInSession.aspx?StartConsole=1&t=5dd34549-b5a1-4ccf-b039-243ce06e264d&DocuEnvelope=50545884-35da-4735-b076-f07883450146&send=1"
}
第一次导航到URL时,我被重定向到Google。我再次复制完全相同的
url
,第二次重定向到该信封的预期编辑器视图


信封创建的更新详细信息:

POST: https://demo.docusign.net/restApi/v2/accounts/AccountId/envelopes/50545884-35da-4735-b076-f07883450146/views/edit
HEADER: X-DocuSign-Authentication {"Username":"API Account", "Password":"API Password", "SendOnBehalfOf": "User 2 Email", "IntegratorKey":"Integration Key"}
Content-Type: application/json
Body: {  "returnUrl": "https://www.google.com/" }
{
    "url": "https://demo.docusign.net/Member/StartInSession.aspx?StartConsole=1&t=5dd34549-b5a1-4ccf-b039-243ce06e264d&DocuEnvelope=50545884-35da-4735-b076-f07883450146&send=1"
}
创建信封期间使用的标题类似于以下内容:

HEADER: X-DocuSign-Authentication {"Username":"API Account", "Password":"API Password", "SendOnBehalfOf": "User 1 Email", "IntegratorKey":"Integration Key"}
  • 发件人:用户1电子邮件
  • 收件人(如信封和请求所述):
    • 订单1-编辑:用户2电子邮件
    • 订单2-需要签名:真实收件人
    • 订单100-收到副本:抄送用户1
    • 订单100-收到副本:抄送用户2

复制问题的简便方法:

POST: https://demo.docusign.net/restApi/v2/accounts/AccountId/envelopes/50545884-35da-4735-b076-f07883450146/views/edit
HEADER: X-DocuSign-Authentication {"Username":"API Account", "Password":"API Password", "SendOnBehalfOf": "User 2 Email", "IntegratorKey":"Integration Key"}
Content-Type: application/json
Body: {  "returnUrl": "https://www.google.com/" }
{
    "url": "https://demo.docusign.net/Member/StartInSession.aspx?StartConsole=1&t=5dd34549-b5a1-4ccf-b039-243ce06e264d&DocuEnvelope=50545884-35da-4735-b076-f07883450146&send=1"
}
登录到DocuSign

  • 创建一个新信封
  • 添加收件人(电子邮件:testeditor@mailinator.com)按顺序1作为编辑器。
  • 添加其他收件人(电子邮件:testsigner@mailinator.com)按顺序2作为签名者。
  • 上传一个随机文件
  • 为签名者向文档添加单个签名块
  • 把信封寄出去
  • 使用邮递员:

  • 请将以下信息用于请求:
  • POST:https://demo.docusign.net/restApi/v2/accounts/AccountId/envelopes/{envelopeIdFromStep6}/views/edit

    标题:X-DocuSign-Authentication{“用户名”:“API帐户”、“密码”:“API密码”、“SendOnBehalfOf”:testeditor@mailinator.com“,”集成键“:”集成键“}

    内容类型:应用程序/json

    Body:{“returnUrl”:https://www.google.com/“}

  • 返回
    url
    https://demo.docusign.net/Member/StartInSession.aspx?StartConsole=1&t=cda7bdd2-0ce7-4478-a659-7984bf982687&docuedevelope={EnvelopedIdfromStep6}&send=1

  • 在与DocuSign支持人员交谈后,确定必须导航到编辑器的URL两次是一个bug。我们试图在服务器端“抛弃”URL的第一次使用,但是,发现cookie被设置为正在使用。这使得第二次在客户端使用URL无法使用

    唯一值得注意的解决方法是通过客户端上的隐藏iFrame导航到URL,这将无法重定向,但会在浏览器中建立cookie,然后再次立即使用URL重定向浏览器。从最终用户的角度来看,该功能将正常工作


    该问题的修复目前在工程团队手中,没有已知的发布或修复日期

    在第一次立即重定向之后,应该有一个额外的URL参数,该参数提供重定向的原因码。您可以再试一次并共享该值吗?@Drew-完整返回URL为:。“事件”是“发送”。您提到您正在“以用户的行为”发送一个信封,这让我觉得您正在使用旧的SOBO功能(代表发送),但我在您的标题中没有看到?您能否再次确认您如何创建信封的详细信息以及具体涉及多少用户?也许这与问题有关?@Ergin-我们正在使用较旧的SOBO功能。SOBO在上面创建信封和创建编辑器视图的标题中指定。信封的创建(在上面显示的内容之外)是基于我们自己的配置的动态的,因此包含精确的C#代码将是困难的。上面的EnvelopeId不是真实的,但如果有帮助的话,我可以提供真实的。@Ergin-我只是找到了一个简单的方法来复制这个问题。请参阅原始帖子的底部。