98 lines
2.1 KiB
Markdown
98 lines
2.1 KiB
Markdown
# 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()
|
||
```
|