# HTTP 客户端参考

> For the complete documentation index, see [llms.txt](https://www.jetbrains.com.cn/help/idea/llms.txt).

`client`  对象提供对 HTTP 客户端会话元数据的访问，并允许您  `[测试](#test)`  HTTP 响应并在输出中  `[日志](#log)`  文本。 每次 IntelliJ IDEA 启动时，该对象都会重新初始化，在 IntelliJ IDEA 重启之间不会保留数据。

`client`  对象还公开嵌套的 [global](#global-variables-storage-reference) 对象，该对象用作变量存储。

## 方法

### test

创建一个名称为  `testName`  且内容为  `func`  的测试。 所有测试在响应处理程序脚本之后执行。 测试结果显示在   测试  选项卡的   服务  工具窗口。

|  形参  |  类型  |  描述  |
| --- | --- | --- |
|  testName  |  字符串  |  测试名称  |
|  func  |  函数  |  JavaScript 函数用于测试 HTTP 响应  |

### 断言

检查指定的  `condition` 是否为  `true` ；否则抛出异常。 可选的  `消息` 参数充当异常消息。

|  形参  |  类型  |  描述  |
| --- | --- | --- |
|  condition  |  boolean  |  检查响应中的条件  |
|  消息  |  字符串  |  如果条件评估为假，则返回的可选消息。  |

### 日志

将  `文本`  输出到响应处理程序或预请求脚本的输出中，然后终止该行。

|  形参  |  类型  |  描述  |
| --- | --- | --- |
|  文本  |  字符串  |  在响应处理程序或预请求脚本的输出中打印的文本。  |

### exit

终止响应处理程序脚本的执行。

## Properties

### 全局

用于设置和移除全局变量和头信息的 [全局变量存储](#global-variables-storage-reference)。

一旦您为全局变量 (  `client.global.set(VariableName, VariableValue)` ) 分配了一个值，您可以在随后的 HTTP 请求中以  `{{VariableName}}`  访问它，或在响应处理程序脚本和预请求脚本中使用  `client.global.get("VariableName")`  访问它。 请参阅 [使用全局变量](http-response-handling-examples.html#script-var-example)以获取更详细的示例。

## 全局变量和头信息

`全局`  对象允许您执行以下操作：

* 设置和获取全局变量。

* 设置全局头信息。 全局页眉可帮助避免在多个 HTTP 请求中重复初始化相同的页眉。 设置后，它们会隐式应用于同一执行流中的所有后续请求。 全局页眉并非用于存储持久状态。 仅限于单个执行流，旨在 Simplify 页眉重用。 > **Tip:** > 在 HTTP 客户端中，一个执行流由单个请求块组成。 每个块可以包含预请求脚本（可选）、请求本身以及响应处理程序（可选）。

### set

将变量与  `varName` 名称一起保存到存储中，并将其值设置为  `varValue` 。 请参阅 [使用全局变量](http-response-handling-examples.html#script-var-example) 以获取更详细的示例。

|  形参  |  类型  |  描述  |
| --- | --- | --- |
|  varName  |  字符串  |  要保存到全局存储的变量名称。  |
|  varValue  |  字符串  |  要保存到全局存储的变量值。  |

### get

返回  `varName` 变量的值。

|  形参  |  类型  |  描述  |
| --- | --- | --- |
|  varName  |  字符串  |  要返回的变量名称。  |

### isEmpty

检查  `全局`  对象是否未定义变量。

### clear

将  `varName` 变量从变量存储中移除。

|  形参  |  类型  |  描述  |
| --- | --- | --- |
|  varName  |  字符串  |  要删除的变量名称。  |

### 清除所有

从变量存储中移除所有变量。

### headers.set

使用  `client.global.headers.set(headerName, headerValue)` 添加  `headerName` 头信息及其  `headerValue` 。 例如：

```HTTP_REQUEST_FULL
client.global.headers.set("X-Our-Header-1", "value1")

```

在响应处理脚本中使用时，该头信息将应用于所有后续的 HTTP 请求。 在预请求脚本中使用时，该头信息将应用于当前 HTTP 请求及所有后续请求。

|  形参  |  类型  |  描述  |
| --- | --- | --- |
|  headerName  |  字符串  |  在 HTTP 请求中使用的头信息名称。  |
|  headerValue  |  字符串  |  头信息的值。  |

要移除头信息，请使用  `null` 作为值：

```HTTP_REQUEST_FULL
client.global.headers.clear(headerName, null))

```

