【发布时间】:2020-06-26 07:46:17
【问题描述】:
我正在尝试在 BizTalk 中调用 RESTful API。我需要针对以下端点进行 GET:
https://mycompany.com/buyer/sandboxevol/
我的发送端口中配置了以下映射
<BtsHttpUrlMapping>
<Operation Name='Operation_1' Method='GET' Url='/page.aspx/en/eai/api/supplier/{id}?apikey={apikey}&format={format}' />
</BtsHttpUrlMapping>
参数 apikey 的值为 XXXXXXXXXXzvrpZHbMdKY75zbszhGOu%2bfnmP7Ms%3d。我已经检查了这一点并从暂停的实例中进行了验证。 但错误消息存在不同的 apikey 值。 参考截图错误信息(hkey值突出显示)
字符 % 在错误消息中被编码为 %25。我认为有两个问题
- 无效的 APi 密钥问题(这篇文章讨论了这个问题)和
- BizTalk 和第 3 方系统之间打开了一些防火墙/代理(我将与内部管理团队核实)
关于解决此编码/奇怪问题的任何想法
【问题讨论】:
-
这可能与编码或API密钥无关。如果 API 只需要 TSL 1.2 并且 .Net 的版本不默认使用它,我会经常看到这种错误。请参阅我对这个问题的回答。 stackoverflow.com/questions/62458270/…
-
谢谢。我正在使用 TLS1.2,它解决了连接问题。但是我仍然有值被编码/更改的问题。请参阅下面的我的 cmets 了解更多详细信息。
-
您可能想发布一个新问题,详细说明您是如何发送创建和发送 API 密钥的,然后我们可以建议修复该问题。在 Stackoverflow 上,他们希望每个问题一个问题。
-
您的 WCF 服务使用什么框架?如果您使用的是 .net 3.5 或更低版本,则默认使用 TSL 1.1。如果你使用.net 4.5,虽然它支持TSL 1.2,但不是默认协议。关于TLS的更多信息,请参考这个链接:docs.microsoft.com/en-us/dotnet/framework/network-programming/…。
标签: wcf biztalk biztalk-2013