【发布时间】:2016-01-20 06:29:55
【问题描述】:
我有一个 docusign 帐户,我正在创建一个包含多个/单个文档的信封,并在完成文档签名后尝试通过“连接”将它们发送到特定端点/url。
现在我有两个端点 url 应用程序。 第一个应用程序是 Rails 2.3.1 应用程序,我在其中获取所有参数,包括通过 docusign 发送的文件的字节流。 这很好用。
第二个应用程序是带有 ruby 2.2.2 的 Rails 4.2.2。现在在这个应用程序中,当我收到来自docusign 的请求时,该请求不包含任何参数。
谁能说出为什么 Rails 2.3.1 和 Rails 4.2.2 之间的行为存在差异。
请注意,在这两种情况下,请求都是 POST 请求。
更新:
我们在 Heroku 上部署了一个示例 Rails 4 应用程序。以下是链接: https://aqueous-harbor-4271.herokuapp.com/docusign/consume 可用于测试docusign通过connect api发送的POST请求。只需将连接端点设置为上述 URL。 它只是将 json 中的传入请求参数呈现为响应。
【问题讨论】:
-
所以问题是传入的 Connect msg to you app 的处理方式不同,您的 2 个不同的应用程序?我将首先使用连接管理面板向您的两个应用程序发送和重新发送相同的连接消息。这样你就可以了。确认您的第二个应用程序是问题所在。然后通过跟踪整个 rails 堆栈中传入 msg 的处理来进行调试。由于传入的 msg 不是来自人类浏览器的标准请求,因此 rails 可以“有用地”从传入的内容中剥离某些内容。我也会在 rails 标签中询问。显示原始连接消息与到达应用控制器的消息
-
使用 rails 4.2.2 应用程序,我在参数中没有得到任何东西。理想情况下,我应该得到 docusign 通常发布的文件和其他参数。
-
我们按照您建议的方式进行了调试。但是我们无法确定错误日志中的任何内容。您能否建议一些其他从docusign角度进行调试的方法。 @LarryK
-
登录您的开发者沙盒帐户,转到您的首选项并启用请求日志记录。然后进行一些 API 调用,返回该屏幕,您将能够下载生成的请求日志。这些将显示您提出的原始请求和返回的响应......
-
大家好。该问题已得到修复。它与 Rails 4 堆栈有关,如果请求方法是 POST 并且内容类型是 application/xml,它会截断请求参数。文档签名没有问题。 stackoverflow.com/questions/33407625/…
标签: ruby-on-rails-4 rack docusignapi