AnP/Go/Models/RequestModel.go

38 lines
736 B
Go

package Models
import (
"AnP/Utils"
"net/http"
"strings"
)
type RequestModel struct {
Domain string
Method string
URL string
}
func NewRequestModel(request *http.Request) RequestModel {
return RequestModel{
Domain: request.Host,
Method: strings.ToLower(request.Method),
URL: request.RequestURI,
}
}
func (_self RequestModel) ToJSON(header string) string {
return Utils.JSONEncode(map[string]any{
header + "domain": _self.Domain,
header + "method": _self.Method,
header + "url": _self.URL,
})
}
func (_self RequestModel) ToJSONItem(header string) map[string]string {
return map[string]string{
header + "domain": _self.Domain,
header + "method": _self.Method,
header + "url": _self.URL,
}
}