2

我正在使用 SAG 中的 webMethods,似乎该服务

pub.client.http

在状态码 401“未授权”上引发异常。

这导致我无法处理状态代码的问题,因为没有任何内容写入管道。

getLastError

确实包含字符串“未授权”但不包含状态代码。除了我不想开始解析异常消息...

有任何想法吗?

4

4 回答 4

2

问了一位 SAG 高级顾问。这是正常行为。没有可以设置的标志来强制抑制此异常...

于 2015-06-25T11:53:17.160 回答
1

header调用的输出参数pub.client.http应包含您所追求的信息:

标头   文档条件。HTTP 响应标头。

关键描述

响应头中的                   文档字段,其中键名表示
                           字段名,值表示字段值。
status                 String响应的 HTTP 状态码。
statusMessage   String响应的 HTTP 状态消息。

有关更多详细信息,请参阅webMethods Integration Server 内置服务参考第 122 页。

于 2015-06-16T13:34:58.370 回答
0

根据@Hugo Ferreira的评论,无论是在您的 webMethods 环境中还是在您的客户端 URL 中,都可能存在 ACL 限制。

你应该考虑的事情:

  1. 您的 webMethods 服务器是否位于封闭环境中,其中需要连接到代理以获取传出请求。您可能可以通过直接从您的 wM 服务器向 URL 地址运行 Web 浏览器程序来进行调查(即在我的情况下使用 SSH 运行 firefox 并出现弹出窗口)

    身份验证请求弹出窗口

  2. 您的请求将发送到的客户端,具有用于身份验证请求的 HTTP


解决方案

要通过这个,您需要做的就是auth user/passwordpub.client:http

验证通过用户名/密码

于 2017-12-13T09:18:04.567 回答
0

可以抑制异常并像任何其他 HTTP 响应一样返回 HTTP 401 状态。转到 IS Admin Extended Settings 并设置:

watt.net.http401.throwException=false

请注意,这是一个服务器范围的设置,因此它将影响所有使用 pub.client:http 的应用程序/服务。

于 2021-11-22T23:47:47.147 回答