Ai
1 Star 0 Fork 0

player1/restful-api-demo

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
request.go 2.17 KB
一键复制 编辑 原始数据 按行查看 历史
package host
import (
"net/http"
"strconv"
)
// QueryHostRequest code
type QueryHostRequest struct {
PageSize int `json:"page_size"` // 大小
PageNumber int `json:"page_number"` // 第几页
KeyWords string `json:"keywords"`
}
func NewQueryHostRequest() *QueryHostRequest {
return &QueryHostRequest{
PageSize: 20,
PageNumber: 1,
}
}
func (q *QueryHostRequest) Offset() int64 {
return int64((q.PageNumber - 1) * q.PageSize)
}
func (q *QueryHostRequest) PageSize2uint() uint {
return uint(q.PageSize)
}
// QueryHostFromHTTP - 从GET请求中获取请求内需要的参数
// http://127.0.0.1:8080/host/query/?page_size=20&page_number=1&keyword=Resource
func QueryHostFromHTTP(r *http.Request) *QueryHostRequest {
//获取参数
qs := r.URL.Query()
req := NewQueryHostRequest()
//需要先判定是否为空,否则转换会报错
if qs.Get("page_size") != "" && qs.Get("page_number") != "" {
req.PageSize, _ = strconv.Atoi(qs.Get("page_size"))
req.PageNumber, _ = strconv.Atoi(qs.Get("page_number"))
}
req.KeyWords = qs.Get("keyword")
return req
}
// DescribeHostRequest code
type DescribeHostRequest struct {
Id string
}
func NewDescribeHostRequestWithId(id string) *DescribeHostRequest {
return &DescribeHostRequest{
Id: id,
}
}
// UpdateHostRequest code
type UPDATE_MODE string
const (
UPDATE_PUT UPDATE_MODE = "put" // 全量更新
UPDATE_PATCH UPDATE_MODE = "patch" //局部更新
)
type UpdateHostRequest struct {
UpdateMode UPDATE_MODE `json:"update_mode"` // 强制规范字段可选在可控范围内
Id string `json:"id"` // 更新数据的id
/* describe *Describe
resource *Resource*/
//UpdateFields map[string]interface{} `json:"updateFields"`
Ins *Host `json:"host"` // 增量ins 通过body获取
/* FieldName []string `json:"fieldName"`
Value []interface{} `json:"value"`*/
ResourceUpdates map[string]interface{} `json:"resource_updates"`
DescribeUpdates map[string]interface{} `json:"describe_updates"`
}
func NewUpdateHostRequest(id string) *UpdateHostRequest {
return &UpdateHostRequest{
Id: id,
}
}
// DeleteHostRequest code
type DeleteHostRequest struct {
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/player1111/restful-api-demo.git
git@gitee.com:player1111/restful-api-demo.git
player1111
restful-api-demo
restful-api-demo
19fd67857982

搜索帮助