38 lines
736 B
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,
|
|
}
|
|
}
|