1

我正在尝试解决我们公司平台与 Adob​​e Connect 集成的一些问题。让我感到困惑的是登录方法的间歇性故障。我们有一个客户的凭据经常失败,但并非总是如此。我在 try/catch 块中调用了登录方法,并将 CFHTTP 输出转储到电子邮件中并发送给我。这是使用 cfhttp 标记的示例失败<cfhttp url="#httpCall#" method="GET" />

在此处输入图像描述

但是,当我通过浏览器调用登录方法时,使用 CFHTTP 标记调用的 URL 属性(例如http://[host].adobeconnect.com/api/xml?action=login&login=[username]&password= [password]&account-id=[id]),我得到以下回调:

<results>
     <status code="ok"/>
</results>

我得到的请求头如下: 在此处输入图像描述

因此,传入的凭据和响应都没有错:当直接调用时,它确实返回了一个 MIME 类型的 text/xml。这表明 CFHTTP 标记存在问题,并且可能与我们为我们的一个客户或两者设置的 Adob​​e Connect 帐户有关。并非每次通过 CFHTTP 调用 Adob​​e Connect 时都会发生这种情况,而且在我们为某个特定客户设置的帐户中发生这种情况的频率似乎比在我们为其他客户设置的帐户中发生的频率更高。我们确实使用其他帐户获得了此问题,但是当我通过在未能返回 MIME 类型的 text/xml 时重复调用 API 登录方法来缓解它时,我们现在只能使用此帐户获得它。

我可以用这个 API 调用的 CFHTTP 标记做什么来解决这个问题?

4

3 回答 3

1

错误详情是“连接失败”+“未知主机”,表示客户端没有从 Adob​​e Connect 服务器收到错误,而是根本无法与其通信。

您已经编辑了完整的主机名,所以我无法测试它的有效性,但我会首先从您的工作站验证它是否正确且可解析(使用 nslookup 或 dig),然后在出现故障的客户端计算机上执行相同操作。调查失败客户端的 DNS 解析:它是否在查询可靠的名称服务器等。症状可能表明客户端配置错误,例如具有错误的帐户域,但间歇性的性质表明并非如此。

您还可以检查是否配置了代理或清除 CF DNS 解析器缓存。请参阅此问题以获取更多详细信息。

于 2015-06-03T15:35:58.283 回答
0

布兰特,你指给我的那篇文章没有完整的答案,但它确实给了我一个线索。除了限制 JVM 的 DNS 缓存 TTL(虽然没有消除它,但确实减少了问题),Windows 服务器的 DHCP 设置还引用了一个存在问题的内部 DNS 服务器。当我们将这些设置更改为更可靠的 DNS 服务器时,解决 Adob​​e Connect 登录方法的问题就停止了。覆盖 DHCP 设置

于 2015-06-17T17:41:19.553 回答
0

尝试在 url 的末尾保留 / ,所以最后你的代码应该是

<cfhttp url="#httpCall#/" method="GET" />
于 2018-11-01T16:04:24.623 回答