使用 SOAP Web 服务操作的示例
使用 SOAP Web 服务 action 传递两个数值,并从在线计算器应用程序中返回总和。
过程
要调用 SOAP Web 服务,请执行以下步骤:
- 双击或拖动 SOAP Web 服务操作。
- 选择连接方法:
- 要使用 URI 进行连接,请输入 URI,例如
http://www.dneonline.com/calculator.asmx?WSDL
。 - 要使用文件连接,请从 Control Room 或 Desktop 选择一个文件,或插入变量。
- 要使用 URI 进行连接,请输入 URI,例如
- 可选:
在地址位置字段中输入 SOAP 端点。
如果您指定地址位置,则 bot 在执行期间使用该位置;否则,bot 使用来自 WSDL 文件的地址位置。
-
单击构建 SOAP 请求。
SOAP 请求窗口出现,显示服务和端口,以及有关其操作和参数的详细信息。
- 在 SOAP 请求窗口中,展开要查看其端口列表的服务。单击所需端口以显示可用操作列表。选择所需的操作并单击应用以从 SOAP 请求中检索操作详细信息。
-
在服务字段中,输入服务名称。
此字段标识 Web 服务支持的端口集合。它保留 SOAP Web 服务
@调用的服务名称
值,例如 Calculator。 - 可选:
在端口字段中,输入要连接的端点。
如果不指定端口,则 bot 将根据所选服务使用 WSDL 文件中提及的第一个端口。但是,如果 SOAP Web 服务不支持该端口,bot 执行将失败。此字段保留 SOPA Web 服务
@调用的绑定名称
值,例如 CalculatorSoap。 -
选择您在端口字段中指定的端点的 SOAP 版本。
选择 1.1 或 1.2。
-
在操作字段中,输入您在端口字段中指定的端点的服务功能名称。
如果以下任一情况为真,则 bot 执行失败:
- 端口字段中提及的端口没有任何操作。
- 该端口的 SOAP 请求中提及的操作不可用。
此字段保留 SOPA Web 服务@服务调用的操作名称
值,例如 Add。 -
选择操作参数或原始数据参数以提供参数详细信息。
注: 如果您选择了构建 SOAP 请求,则操作选项卡中的参数详细信息表将自动填充所选操作的参数。为这些参数提供值。您也可以为特定操作添加、编辑或删除参数。
- 如果选择操作参数,请输入每个参数的名称和值。例如,输入以下值:
- 在第一个名称字段中输入 intA
- 在第一个值字段中输入 10
- 在第二个名称字段中输入 intB
- 在第二个值字段中输入 20
- 如果您选择原始数据参数,请选择参数或凭据参数。
- 如果选择操作参数,请输入每个参数的名称和值。例如,输入以下值:
-
参数:您可以使用凭据存储柜中的凭据值,而无需在原始数据中以纯文本形式公开凭据(用户名或密码)。为此,您必须首先在凭据映射器中映射凭据,并使用大括号内原始数据中的参考名称。
例如,在原始数据中,您以纯文本形式提供密码,以对服务器进行身份验证。
<aut:AuthHeader> <aut:Password> abc@123</aut:Password> </aut:AuthHeader>
要使用凭据存储柜中的密码,请执行以下步骤:-
单击添加替换。
在 XML 中的名称字段中输入参考名称,例如 pwd。选择凭据以使用凭据保管库、变量中可用的值,以使用凭据变量,或选择不安全的字符串以手动指定要使用的值。有关凭据保管库及其使用方法的更多信息,请参阅 Credential Vault 中的凭据和 lockers。
- 单击添加
-
指定大括号内原始数据中的参考,如下所示:
<aut:AuthHeader> <aut:Password>{{pwd}}</aut:Password> </aut:AuthHeader>
在原始数据中指定的参考名称pwd
将替换凭据保管库中存储的相应值。确保您按照添加替换中指定的相同格式输入参考名称。例如,如果您在添加替换中输入密码为 pwd,并在原始数据中输入password
作为参考名称,则在运行 bot 时,bot 将遇到错误。
-
单击添加替换。
- 凭据参数:如果您想输入原始数据参数作为凭据。您可以选择凭据以使用凭据保管库中可用的值,或选择变量以使用凭据变量,或选择“不安全的字符串”以手动指定要使用的值。
-
从身份验证模式列表中选择无身份验证或基本身份验证。
- 如果您选择无身份验证,请继续下一步。
- 如果您选择基本身份验证,请输入您的凭据。
- 可选: 通过从 Control Room 或桌面选择文件或插入变量来提供客户端证书。
- 可选: 提供自定义标题。
- 可选: 提供一个文件以保存 XML 输出。
-
选择完整回复或选定回复以缩小回复范围。
- 如果您选择完整回复,请继续下一步。
- 如果您选择所选响应,则在您手动创建 Xpath 表达式而不使用构建 Xpath 选项时,请执行以下步骤。
- 提供 XPath 表达式。例如:
/*[local-name()='Envelope' and namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/']/*[local-name()='Body' and namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/']/*[local-name()='AddResponse' and namespace-uri()='http://tempuri.org/']/*[local-name()='AddResult' and namespace-uri()='http://tempuri.org/']
- 选择 XML 输出的部分:值、内部 XML 或外部 XML
- 如果您选择值,请选择分隔符选项:竖线或分号。
- 如果您选择值,请选择分隔符选项:管道符、分号或自定义。如果您选择自定义,请在自定义分隔符(可选)字段中输入变量或字符。注: 不支持将特殊字符美元符号 ($) 作为分隔符。
- 提供 XPath 表达式。例如:
-
单击构建 Xpath。
将出现“输出预览”窗口。
-
从回复正文中选择适当的节点。XML 路径将自动创建。单击应用。
如果您使用构建 Xpath 选项,XPath 表达式和值字段将根据您选择的操作自动填充详细信息。
- 可选:
要在发送 SOAP 请求和接收响应时设置超时值,请在等待操作完成字段中指定等待时间(以毫秒为单位)。
默认情况下,等待时间为 60000 毫秒。
-
选择变量以存储 XML 输出。
例如,prompt-assignment
-
通过在正文消息中插入带有变量 prompt-assignment 的消息框 action 来验证 SOAP Web 服务 action 的输出。运行 bot 时,消息框应显示 30。