httpGet
Version 24.3.9111
httpGet
对基于 Web 的特定 API 资源发出 HTTP GET 请求。
必需的参数
- url: 要检索的 URL。
可选的参数
- timeout: 操作完成的超时时间(以秒为单位)。零(0)表示没有超时。默认值为 “60”。
- proxy_server: 用于请求的代理服务器的 IP 地址或主机名。
- proxy_auto: 是否应从 Windows 系统设置中检测代理。这优先于其它代理设置,在 Java 中不可用。允许的值为 “TRUE,FALSE”。默认值为 “FALSE”。
- proxy_port: 代理服务器的端口号。
- proxy_user: 向代理服务器进行身份验证的用户 ID。
- proxy_password: 与代理服务器进行身份验证的密码。
- proxy_authscheme: 代理服务器的认证方案。允许的值为 “BASIC,DIGEST,PROPRIETARY,NONE,NTLM”。默认值为 “BASIC”。
- proxy_authtoken: 代理身份验证令牌。
- proxy_ssltype: 代理服务器的 TLS/SSL 类型。允许的值为 “AUTO,ALWAYS,NEVER,TUNNEL”。默认值为 “AUTO”。
- firewall_server: 防火墙的 IP 地址或主机名。
- firewall_port: 防火墙的端口号。
- firewall_user: 向防火墙进行身份验证的用户 ID。
- firewall_password: 向防火墙进行身份验证的密码。
- firewall_type: 防火墙的类型。允许的值为 “NONE,TUNNEL,SOCKS4,SOCKS5”。默认值为 “NONE”。
- internalconfig#: 设置一个内部配置设置。
- charset: 交换/传输的数据的字符集。默认值为 “UTF-8”。
- httpversion: HTTP 协议版本。允许的值为 “1.0、1.1”。默认值为 “1.1”。
- cookie:*: 添加到请求中的 cookie。
- followredirects: 是否遵循 HTTP 重定向。允许的值为 “TRUE,FALSE”。默认值是 “TRUE”。
- sslcert: 要从服务器接受的 TLS/SSL 证书。这可以采用完整 PEM 证书,包含证书的文件路径,公钥,MD5 指纹或 SHA-1 指纹的形式。 指定证书以外的任何证书都将被拒绝。 如果未指定,此值默认为“TRUSTED”,这意味着仅接受系统信任的证书。 如果设置为 “*”,则无论系统是否信任任何证书都将被接受。
- sslclientcert: 客户端证书的名称。
- sslclientcerttype: 客户端证书的存储类型。允许的值是 “USER,MACHINE,PFXFILE,PFXBLOB,JKSFILE,JKSBLOB,PEMKEY_FILE,PEMKEY_BLOB,PUBLIC_KEY_FILE,PUBLIC_KEY_BLOB,SSHPUBLIC_KEY_BLOB,P7BFILE,P7BBLOB,SSHPUBLIC_KEY_FILE,PPKFILE,PPKBLOB,XMLFILE,XMLBLOB”。
- sslclientcertpassword: 客户端证书的密码。
- sslclientcertsubject: 客户端证书的主题。使用星号会找到存储中的第一个证书。
- user: 如果 authscheme 参数设置为 None 以外的其它值,则使用该用户名进行身份验证。
- password: 如果 authscheme 参数设置为 None 以外的其它值,则使用该密码进行身份验证。
- authscheme: 要使用的授权机制。仅当提供用户和密码时相关。有效值包括 BASIC、DIGEST 和 NTLM。默认为 BASIC。允许的值是 “BASIC,DIGEST,NTLM”。默认值为 “BASIC”。
- version: OAuth 版本。使用 OAuth 来授权请求。默认为 Disabled。允许的值是“Disabled,1.0,2.0”。默认值为“Disabled”。
- token: OAuth 的请求令牌。
- token_secret: 请求令牌密钥。仅限 OAuth 1.0。
- sign_method: 用于计算 OAuth 1.0 签名的签名方法。允许的值是 “HMAC-SHA1,PLAINTEXT”。默认值为 “HMAC-SHA1”。
- client_ID: 客户端 ID。仅限 OAuth 1.0。
- client_secret: 客户密钥。仅限 OAuth 1.0。
- header:name#: 与请求一起传递的每个自定义头的名称。
- header:value#: 与请求一起传递的每个自定义头的值。
- ifmodifiedsince: 如果将 if-modified-since 日期和时间用作检索结果的筛选器(例如:Sat,25 Feb 2006 04:11:47 GMT)。
- localfile: 如果指定,则 GET 的结果将写入此文件。
- logfile: 用来记录请求和相应日志的全路径。需要配合 verbosity 使用。
- verbosity: 日志的级别,从1(最少)到5(最高)。
输出属性
- ssl:issuer: TLS/SSL 证书的颁发者。
- ssl:subject: TLS/SSL 证书的主题。
- http:statuscode: 从请求返回的 HTTP 状态代码。
- http:content: HTTP 响应的内容。
- cookie:*: Cookie 随响应返回。
- http:allcookies: 响应中的所有 cookie,以单个字符串形式返回。
- header:*: 响应返回的头文件。
示例
<arc:set attr="http.URL" value="https://postman-echo.com/basic-auth" />
<!-- 在 GET 请求中添加 HTTP 消息头 -->
<arc:set attr="http.header:name#1" value="mySpecialHeader" />
<arc:set attr="http.header:value#1"value="Foo" />
<!-- 通过基本身份验证设置凭据 -->
<arc:set attr="http.user" value="postman" />
<arc:set attr="http.password" value="password" />
<!-- 可选的日志记录参数。 在对请求进行故障排除时很有用 -->
<arc:set attr="http.logfile" value="/tmp/httpLog.txt" />
<arc:set attr="http.verbosity" value="3" />
<!-- 将http输入项传入调用,并将输出文件的数据设置为HTTP响应-->
<arc:call op="httpGet" in="http" out="response">
<arc:set attr="output.data" value="[response.http:content]" />
</arc:call>
<!-- 设置输出文件名并推送文件 -->
<arc:set attr="output.filename" value="httpResponseContent.txt" />
<arc:push item="output" />