c# - 发布“连接尝试失败”时,Docusign API 遇到超时
问题描述
我基于https://github.com/docusign/code-examples-csharp编写了一个基于 Web 的小型解决方案
当我在 Visual Studio IDE 中时,一切正常。
如果会话是新的并且用户没有登录,他将被重定向到 DocuSign 登录页面。输入他的凭据后,他将被发送回 https://localhost:16123/ds/callback 页面。并且程序运行良好
然后我将解决方案发布到网络服务器(无法从外部访问)并收到错误“连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立连接失败,因为连接的主机未能响应。” 当它试图重定向到我的页面时。
我在Docusign 连接服务未将数据发布到必须可从 Internet 访问的域的指定 url 上读到,但该帖子是 7 年前的。这仍然是解决方案吗,因为我没有机会公开发布它。
编辑:
再生产:
- 从https://github.com/docusign/code-examples-csharp下载示例
- 将 appsettings.example.json 复制到 appsettings.json 并进行编辑
- 在“DocuSign”部分插入 ClientID、ClientSecret,将 Appurl 更改为 https://{computername}.org.{company}.local,将 quickstart 设置为 false
- 将我的内部地址 https://{computername}.org.{company}.local/ds/callback 插入重定向网址
操作:启动浏览器,转到https://computername.org.company.local,选择使用 Docusign 进行身份验证,输入用户和密码。大约 30 秒后,我被引导到页面 https://{computername}.org.{company}.local/Home/Error?message=A%20connection%20attempt%20failed%20because%20the%20connected%20party%20did% 20not%20properly%20respond%20after%20a%20period%20of%20time,%20or%20established%20connection%20failed%20because%20connected%20host%20has%20failed%20to%20respond。
解决方案
我不确定您的网络服务器到底是什么,但您必须启用防火墙/代理/防病毒等,以允许您的应用程序直接从服务器进行 API 调用。一个简单的锁定网络服务器通常不允许这些调用,您必须与您的网络人员合作才能启用此功能。我们已经看到允许 GET 调用但不允许 POST(反之亦然)的情况,这也不会。
这甚至与 DocuSign 调用 INTO 您的服务器的 webhooks/Connect 无关。这只是您的服务器在外面拨打电话,而这些电话已为您屏蔽。
我希望您探索使用 AWS/Azure 等公共云,因为它使这一切变得更加容易并且同样安全。
推荐阅读
- python - 在 Django Html 模板中循环范围
- reactjs - 在谷歌搜索控制台中索引时服务工作者注册失败
- python - 计算numpy行行叉积的欧几里得距离?
- php - 如何删除 laravel 集合上的索引以仅作为对象读取?
- python - 如何为特定键值创建新字典?
- python - 烧瓶和芹菜的Python循环导入错误
- go - Microsoft 日历事件响应 Go 结构
- python - 将不同的时间格式转换为相同的格式并找出2次之间的差异
- postgresql - Postgres EXECUTE 比 Query 慢
- firebase - 新的 Firebase Crashlytics SDK 未与 android 项目通信