tansci/.claude/skills/magic-script/references/http-module.md
xuewuerduo f468d532b1 feat: 初始化tansci资产管理项目
包含以下模块:
- antdv-next-admin: Vue 3 + TypeScript + Ant Design Vue 管理后台
  - 设备/许可证/配件/耗材 CRUD 管理页面
  - 基础数据管理 (分类/位置/制造商/型号/供应商)
  - 业务管理 (故障报修/盘点/资产分配/资产申请/交易记录)
  - 下拉选项改造 (ID输入框 → 搜索下拉选择)
  - 资产状态字典化 (接入sys_dict系统)
  - 界面文案优化 (设备→资产, 在库/在用/维修中/已报废)
  - 修复 console 警告 (popupClassName, 重复组件注册)
- our-itam: Java Spring Boot + magic-api 后端服务
- fantastic-admin: 前端底层框架 (pnpm monorepo)
- ciyo-itasset: CIYO 资产模块
- magic-script-skill: Claude Code skill 定义
- .claude: 对话历史记录

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-05-17 21:41:22 +08:00

98 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# HTTP模块
## 模块说明
`http`模块是基于`RestTemplate`封装而来,目前只做了少量的封装。对于一些通用的配置可以使用自定义`RestTemplate`来实现
```java
@Bean
public HttpModule magicHttpModule() {
RestTemplate template = new RestTemplate();
// 对RestTemplate进行配置.
return new HttpModule(template);
}
```
## 引用模块
```javascript
import http;
```
## connect
- 入参:`url`:`string`
- 返回值:`HttpModule`
- 函数说明创建新的http请求对象
```javascript
import http;
http.connect("http://localhost:9999/sql/select")
```
## 设置URL参数、表单参数、Header
```javascript
import http;
http.param('url_param1','url_param_value1') // 设置URL参数
.param({ // 批量设置URL参数
url_param_2 : 2,
url_param_3 : 3,
})
.data('form_param1','form_param_value1') // 设置表单参数
.data({ // 批量设置表单参数
form_param_2 : 2,
form_param_3 : 3,
})
.header('header_param1','header_param_value1') // 设置header参数
.header({ // 批量设置header参数
header_param_2 : 2,
header_param_3 : 3,
})
```
## body
- 入参:`body`:`Object`
- 函数说明设置请求Body
```javascript
import http;
http.connect('..').body({
id: 1,
name: 'magic-api'
});
```
## entity
- 入参: `entity`: `HttpEntity`
- 函数说明:自定义`HttpEntity`
```javascript
import http;
http.connect('..').entity(entity)
```
## contentType
- 入参: `contentType`: `String`或`MediaType`
- 函数说明:定义请求内容类型
```javascript
import http;
http.connect('..').contentType('application/json')
```
## 请求方法
- `post()` - POST请求
- `get()` - GET请求
- `delete()` - DELETE请求
- `put()` - PUT请求
- `head()` - HEAD请求
- `patch()` - PATCH请求
- `options()` - OPTIONS请求
- `trace()` - TRACE请求
## execute
- 返回值:`ResponseEntity`
- 函数说明:执行对应的请求
```javascript
import http;
return http.connect('http://localhost:9999/sql/select').post().getBody()
```