# @advanced-rest-client/arc-definitions 中文文档

规范地址：https://npmcn.com/package/%40advanced-rest-client/arc-definitions/

版本：3\.1\.1
npm 元数据更新时间：2026-04-07T19:30:05.419Z
中文译文更新时间：2026-11-06T12:15:40.865Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40advanced-rest-client/arc-definitions
原文对照：https://npmcn.com/package/%40advanced-rest-client/arc-definitions/?lang=original
项目主页：https://github.com/advanced-rest-client/arc-definitions#readme
源码仓库：https://github.com/advanced-rest-client/arc-definitions

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：98.5 kB，15 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：未声明
- 运行依赖：0 个
- 首次发布：2018-05-17T23:53:13.816Z
- 最新版本发布：2020-10-04T02:56:45.292Z
- 近 30 天下载量：3233（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：6（近 12 个月 0 个）

## 中文简介

ARC中使用的内部数据定义. 包含状态代码和请求及响应标题的定义.

## 安装

```sh
npm install @advanced-rest-client/arc-definitions
```

也可以使用：`pnpm add @advanced-rest-client/arc-definitions`、`yarn add @advanced-rest-client/arc-definitions`、`bun add @advanced-rest-client/arc-definitions`

## README

[![Published on NPM](https://img.shields.io/npm/v/@advanced-rest-client/arc-definitions.svg)](https://www.npmjs.com/package/@advanced-rest-client/arc-definitions)

[![Build Status](https://travis-ci.com/advanced-rest-client/arc-definitions.svg)](https://travis-ci.com/advanced-rest-client/arc-definitions)

[![Published on webcomponents.org](https://img.shields.io/badge/webcomponents.org-published-blue.svg)](https://www.webcomponents.org/element/advanced-rest-client/arc-definitions)

# 弧定义

Adavanced REST客户端和API Console中使用的请求/响应头和状态代码定义数据库.

这个 `<arc-definitions>` 元素会监听查询事件. 其他元素可以发送 `query-headers` 财务报告和审定财务报表 `query-status-codes` 由此元素处理的事件。 事件被禁止传播. 控件事件接收新属性 `detail` 带有查询结果的对象.

## 使用量

### 发送查询事件

#### 查询信头数据

每个标题定义项具有以下属性:

-   `key` - 字符串,标题的名称
-   `desc` - 字符串,信头的文档
-   `example` - 字符串,标题的示例值
-   `autocomplete` - 字符串组合,自动完成函数的可能/示例值列表。 此属性不适用于响应头 .

```json
{
  "key": "Accept-Charset",
  "desc": "Character sets that are acceptable",
  "example": "Accept-Charset: utf-8",
  "autocomplete": ["utf-8"]
}
```

要查询信头数据发送 `query-headers` 事件:

```javascript
const e = new CustomEvent('query-headers', {
  detail: {
    type: 'request', // or "response"
    query: 'Acce'
  },
  bubbles: true,
  cancelable: true
});
document.body.dispatchEvent(e);
console.log(event.defaultPrevented); // true
const headers = event.detail.headers;  // Array[...]
```

或使用必需的 API :

```javascript
const data = document.querySelector('arc-definitions').queryHeaders('A', 'response');
console.log(data); // list of headers with "A" in the name
```

#### 查询状态代码数据

状态代码定义项有以下属性:

-   `key` - 号码,代码值
-   `desc` - 字符串,状态代码的文档
-   `label` - 字符串、 与代码相关的状态标签

```json
{
  "key": 101,
  "label": "Switching Protocols",
  "desc":"This means the requester has asked the server to switch protocols and the server is acknowledging that it will do so"
}
```

查询状态代码定义发送 `query-status-codes` 事件:

```javascript
const e = new CustomEvent('query-status-codes', {
  detail: {
    code: 200
  },
  bubbles: true,
  cancelable: true
});
document.body.dispatchEvent(e);
console.log(event.defaultPrevented); // true
const statusCode = event.detail.statusCode; // {...}
```

或使用必需的 API :

```javascript
const status = document.querySelector('arc-definitions').getStatusCode(201);
console.log(status); // Status code definition for 201
```

### 安装

```
npm install --save @advanced-rest-client/arc-definitions
```

### 在 html 文件内

```html
<html>
  <head>
    <script type="module">
      import '@advanced-rest-client/arc-definitions/arc-definitions.js';
    </script>
  </head>
  <body>
    <arc-definitions></arc-definitions>
  </body>
</html>
```

### 在一个LitElement中

```js
import { LitElement, html } from 'lit-element';
import '@advanced-rest-client/arc-definitions/arc-definitions.js';

class SampleElement extends LitElement {
  render() {
    return html`
    <arc-definitions></arc-definitions>
    `;
  }
}
customElements.define('sample-element', SampleElement);
```

### 在多聚体3元素中

```js
import {PolymerElement, html} from '@polymer/polymer';
import '@advanced-rest-client/arc-definitions/arc-definitions.js';

class SampleElement extends PolymerElement {
  static get template() {
    return html`
    <arc-definitions></arc-definitions>
    `;
  }

  _authChanged(e) {
    console.log(e.detail);
  }
}
customElements.define('sample-element', SampleElement);
```

## 发展

```sh
git clone https://github.com/advanced-rest-client/arc-definitions
cd arc-definitions
npm install
```

### 本地运行演示

```sh
npm start
```

### 运行测试

```sh
npm test
```

## 常见问题

### @advanced-rest-client/arc-definitions 是什么？

ARC中使用的内部数据定义\. 包含状态代码和请求及响应标题的定义\.

### 如何安装 @advanced-rest-client/arc-definitions？

在项目目录运行 npm install @advanced-rest-client/arc-definitions，或使用 pnpm add / yarn add / bun add。

### @advanced-rest-client/arc-definitions 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/advanced-rest-client\_\_arc-definitions 是否存在。

### @advanced-rest-client/arc-definitions 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @advanced-rest-client/arc-definitions 可以商用吗？

@advanced-rest-client/arc-definitions 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @advanced-rest-client/arc-definitions 的下载量有多少？

根据 npm 官方下载统计，@advanced-rest-client/arc-definitions 在 2026/10/05 – 2026/11/03 这 30 天内被下载 3,233 次，日均约 108 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @advanced-rest-client/arc-definitions 还在维护吗？

最新版本 3\.1\.1 发布于 2020/10/04（6 年前）；至今共发布 6 个版本，其中过去 12 个月发布了 0 个；首次发布于 2018/05/18。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

