1
0
mirror of https://github.com/fumiama/tienyik.git synced 2026-07-02 08:50:24 +08:00

feat: add more apis

This commit is contained in:
源文雨
2025-10-31 23:20:46 +08:00
parent 15fcc9a338
commit da1de770ad
19 changed files with 509 additions and 82 deletions

35
internal/horm/req.go Normal file
View File

@@ -0,0 +1,35 @@
package horm
import (
"net/url"
"reflect"
"github.com/fumiama/tienyik"
"github.com/fumiama/tienyik/internal/textio"
)
func Marshal(tya *tienyik.AES, x any) []byte {
q := url.Values{}
v := reflect.ValueOf(x).Elem()
t := v.Type()
for i := 0; i < v.NumField(); i++ {
field := v.Field(i)
fieldType := t.Field(i)
formTag := fieldType.Tag.Get("form")
if formTag == "" || formTag == "-" {
continue
}
if field.Kind() == reflect.String {
q.Set(formTag, field.String())
}
}
s := q.Encode()
if tya != nil {
return tya.Encrypt(textio.StringToBytes(s))
}
return textio.StringToBytes(s)
}