Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Vladimir Barsukov
zGo
Commits
b95454c1
Commit
b95454c1
authored
Nov 09, 2025
by
Vladimir Barsukov
Browse files
PostJson
parent
c314bf18
Changes
5
Show whitespace changes
Inline
Side-by-side
go.mod
View file @
b95454c1
...
...
@@ -5,27 +5,28 @@ go 1.25
require (
github.com/aws/aws-sdk-go
v1.55.8
github.com/georgysavva/scany/v2
v2.1.4
github.com/gin-gonic/gin
v1.1
0.1
github.com/gin-gonic/gin
v1.1
1.0
github.com/go-co-op/gocron
v1.37.0
github.com/goccy/go-json
v0.10.5
github.com/google/uuid
v1.6.0
github.com/jackc/pgx/v5
v5.7.6
github.com/patrickmn/go-cache
v2.1.0+incompatible
github.com/pkg/errors
v0.9.1
golang.org/x/exp
v0.0.0-2025
0911091902-df9299821621
golang.org/x/sync
v0.1
7
.0
golang.org/x/exp
v0.0.0-2025
1023183803-a4bb9ffd2546
golang.org/x/sync
v0.1
8
.0
)
require (
github.com/bytedance/gopkg
v0.1.3 // indirect
github.com/bytedance/sonic
v1.14.
1
// indirect
github.com/bytedance/sonic/loader
v0.
3
.0 // indirect
github.com/bytedance/sonic
v1.14.
2
// indirect
github.com/bytedance/sonic/loader
v0.
4
.0 // indirect
github.com/cloudwego/base64x
v0.1.6 // indirect
github.com/gabriel-vasile/mimetype
v1.4.1
0
// indirect
github.com/gabriel-vasile/mimetype
v1.4.1
1
// indirect
github.com/gin-contrib/sse
v1.1.0 // indirect
github.com/go-playground/locales
v0.14.1 // indirect
github.com/go-playground/universal-translator
v0.18.1 // indirect
github.com/go-playground/validator/v10
v10.27.0 // indirect
github.com/go-playground/validator/v10
v10.28.0 // indirect
github.com/goccy/go-json
v0.10.5 // indirect
github.com/goccy/go-yaml
v1.18.0 // indirect
github.com/jackc/pgpassfile
v1.0.0 // indirect
github.com/jackc/pgservicefile
v0.0.0-20240606120523-5a60cdf6a761 // indirect
github.com/jackc/puddle/v2
v2.2.2 // indirect
...
...
@@ -38,15 +39,17 @@ require (
github.com/modern-go/concurrent
v0.0.0-20180306012644-bacd9c7ef1dd // indirect
github.com/modern-go/reflect2
v1.0.2 // indirect
github.com/pelletier/go-toml/v2
v2.2.4 // indirect
github.com/quic-go/qpack
v0.5.1 // indirect
github.com/quic-go/quic-go
v0.56.0 // indirect
github.com/robfig/cron/v3
v3.0.1 // indirect
github.com/twitchyliquid64/golang-asm
v0.15.1 // indirect
github.com/ugorji/go/codec
v1.3.
0
// indirect
github.com/ugorji/go/codec
v1.3.
1
// indirect
go.uber.org/atomic
v1.11.0 // indirect
go
lang.org/x/arch
v0.
21
.0 // indirect
golang.org/x/
crypto
v0.
4
2.0 // indirect
golang.org/x/
net
v0.4
4
.0 // indirect
golang.org/x/
sys
v0.
3
6.0 // indirect
golang.org/x/
text
v0.
29
.0 // indirect
google.
golang.org/
protobuf
v
1
.3
6.9
// indirect
go
pkg.in/yaml.v3
v3.0
.1 // indirect
go
.uber.org/mock
v0.
6
.0 // indirect
golang.org/x/
arch
v0.2
3
.0 // indirect
golang.org/x/
crypto
v0.4
3
.0 // indirect
golang.org/x/
net
v0.
4
6.0 // indirect
golang.org/x/
sys
v0.
38
.0 // indirect
golang.org/
x/text
v
0
.3
0.0
// indirect
go
ogle.golang.org/protobuf
v1.36
.1
0
// indirect
)
go.sum
View file @
b95454c1
...
...
@@ -2,10 +2,10 @@ github.com/aws/aws-sdk-go v1.55.8 h1:JRmEUbU52aJQZ2AjX4q4Wu7t4uZjOu71uyNmaWlUkJQ
github.com/aws/aws-sdk-go
v1.55.8/go.mod h1:
ZkViS9AqA6otK+JBBNH2++sx1sgxrPKcSzPPvQkUtXk=
github.com/bytedance/gopkg
v0.1.3 h1:
TPBSwH8RsouGCBcMBktLt1AymVo2TVsBVCY4b6TnZ/M=
github.com/bytedance/gopkg
v0.1.3/go.mod h1:
576VvJ+eJgyCzdjS+c4+77QF3p7ubbtiKARP3TxducM=
github.com/bytedance/sonic
v1.14.
1
h1:
FBMC0zVz5XUmE4z9wF4Jey0An5FueFvOsTKKKtwIl7w
=
github.com/bytedance/sonic
v1.14.
1
/go.mod h1:
gi6uhQLMbTdeP0muCnrjHLeCUPyb70ujhnNlhOylAFc
=
github.com/bytedance/sonic/loader
v0.
3
.0 h1:
dskwH8edlzNMctoruo8FPTJDF3vLtDT0sXZwvZJyqeA
=
github.com/bytedance/sonic/loader
v0.
3
.0/go.mod h1:
N8A3vUdtUebEY2/VQC0MyhYeKUFosQU6FxH2JmUe6VI
=
github.com/bytedance/sonic
v1.14.
2
h1:
k1twIoe97C1DtYUo+fZQy865IuHia4PR5RPiuGPPIIE
=
github.com/bytedance/sonic
v1.14.
2
/go.mod h1:
T80iDELeHiHKSc0C9tubFygiuXoGzrkjKzX2quAx980
=
github.com/bytedance/sonic/loader
v0.
4
.0 h1:
olZ7lEqcxtZygCK9EKYKADnpQoYkRQxaeY2NYzevs+o
=
github.com/bytedance/sonic/loader
v0.
4
.0/go.mod h1:
AR4NYCk5DdzZizZ5djGqQ92eEhCCcdf5x77udYiSJRo
=
github.com/cloudwego/base64x
v0.1.6 h1:
t11wG9AECkCDk5fMSoxmufanudBtJ+/HemLstXDLI2M=
github.com/cloudwego/base64x
v0.1.6/go.mod h1:
OFcloc187FXDaYHvrNIjxSe8ncn0OOM8gEHfghB2IPU=
github.com/cockroachdb/cockroach-go/v2
v2.2.0 h1:
/5znzg5n373N/3ESjHF5SMLxiW4RKB05Ql//KWfeTFs=
...
...
@@ -14,14 +14,14 @@ github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ3
github.com/davecgh/go-spew
v1.1.0/go.mod h1:
J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew
v1.1.1 h1:
vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew
v1.1.1/go.mod h1:
J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/gabriel-vasile/mimetype
v1.4.1
0
h1:
zyueNbySn/z8mJZHLt6IPw0KoZsiQNszIpU+bX4+ZK0
=
github.com/gabriel-vasile/mimetype
v1.4.1
0
/go.mod h1:
d+9Oxyo1wTzWdyVUPMmXFvp4F9tea18J8ufA774AB3s=
github.com/gabriel-vasile/mimetype
v1.4.1
1
h1:
AQvxbp830wPhHTqc1u7nzoLT+ZFxGY7emj5DR5DYFik
=
github.com/gabriel-vasile/mimetype
v1.4.1
1
/go.mod h1:
d+9Oxyo1wTzWdyVUPMmXFvp4F9tea18J8ufA774AB3s=
github.com/georgysavva/scany/v2
v2.1.4 h1:
nrzHEJ4oQVRoiKmocRqA1IyGOmM/GQOEsg9UjMR5Ip4=
github.com/georgysavva/scany/v2
v2.1.4/go.mod h1:
fqp9yHZzM/PFVa3/rYEC57VmDx+KDch0LoqrJzkvtos=
github.com/gin-contrib/sse
v1.1.0 h1:
n0w2GMuUpWDVp7qSpvze6fAu9iRxJY4Hmj6AmBOU05w=
github.com/gin-contrib/sse
v1.1.0/go.mod h1:
hxRZ5gVpWMT7Z0B0gSNYqqsSCNIJMjzvm6fqCz9vjwM=
github.com/gin-gonic/gin
v1.1
0.1
h1:
T0ujvqyCSqRopADpgPgiTT63DUQVSfojyME59Ei63pQ
=
github.com/gin-gonic/gin
v1.1
0.1
/go.mod h1:
4PMNQiOhvDRa013RKVbsiNwoyezlm2rm0uX/T7kzp5Y
=
github.com/gin-gonic/gin
v1.1
1.0
h1:
OW/6PLjyusp2PPXtyxKHU0RbX6I/l28FTdDlae5ueWk
=
github.com/gin-gonic/gin
v1.1
1.0
/go.mod h1:
+iq/FyxlGzII0KHiBGjuNn4UNENUlKbGlNmc+W50Dls
=
github.com/go-co-op/gocron
v1.37.0 h1:
ZYDJGtQ4OMhTLKOKMIch+/CY70Brbb1dGdooLEhh7b0=
github.com/go-co-op/gocron
v1.37.0/go.mod h1:
3L/n6BkO7ABj+TrfSVXLRzsP26zmikL4ISkLQ0O8iNY=
github.com/go-playground/assert/v2
v2.2.0 h1:
JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s=
...
...
@@ -30,10 +30,12 @@ github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/o
github.com/go-playground/locales
v0.14.1/go.mod h1:
hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY=
github.com/go-playground/universal-translator
v0.18.1 h1:
Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY=
github.com/go-playground/universal-translator
v0.18.1/go.mod h1:
xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY=
github.com/go-playground/validator/v10
v10.2
7
.0 h1:
w8+XrWVMhGkxOaaowyKH35gFydVHOvC0/uWoy2Fzwn4
=
github.com/go-playground/validator/v10
v10.2
7
.0/go.mod h1:
I5QpIEbmr8On7W0TktmJAumgzX4CA1XNl4ZmDuVHKKo
=
github.com/go-playground/validator/v10
v10.2
8
.0 h1:
Q7ibns33JjyW48gHkuFT91qX48KG0ktULL6FgHdG688
=
github.com/go-playground/validator/v10
v10.2
8
.0/go.mod h1:
GoI6I1SjPBh9p7ykNE/yj3fFYbyDOpwMn5KXd+m2hUU
=
github.com/goccy/go-json
v0.10.5 h1:
Fq85nIqj+gXn/S5ahsiTlK3TmC85qgirsdTP/+DeaC4=
github.com/goccy/go-json
v0.10.5/go.mod h1:
oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M=
github.com/goccy/go-yaml
v1.18.0 h1:
8W7wMFS12Pcas7KU+VVkaiCng+kG8QiFeFwzFb+rwuw=
github.com/goccy/go-yaml
v1.18.0/go.mod h1:
XBurs7gK8ATbW4ZPGKgcbrY1Br56PdM69F7LkFRi1kA=
github.com/gofrs/flock
v0.8.1 h1:
+gYjHKf32LDeiEEFhQaotPbLuUXjY5ZqxKgXy7n59aw=
github.com/gofrs/flock
v0.8.1/go.mod h1:
F1TvTiK9OcQqauNUHlbJvyl9Qa1QvF/gOUDKA14jxHU=
github.com/google/go-cmp
v0.7.0 h1:
wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
...
...
@@ -60,11 +62,9 @@ github.com/klauspost/cpuid/v2 v2.3.0 h1:S4CRMLnYUhGeDFDqkGriYKdfoFlDnMtqTiI/sFzh
github.com/klauspost/cpuid/v2
v2.3.0/go.mod h1:
hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
github.com/kr/pretty
v0.1.0/go.mod h1:
dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
github.com/kr/pretty
v0.2.1/go.mod h1:
ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
github.com/kr/pretty
v0.3.0 h1:
WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0=
github.com/kr/pretty
v0.3.0/go.mod h1:
640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk=
github.com/kr/pty
v1.1.1/go.mod h1:
pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
github.com/kr/text
v0.1.0/go.mod h1:
4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
github.com/kr/text
v0.2.0 h1:
5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
github.com/kr/text
v0.2.0/go.mod h1:
eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
github.com/leodido/go-urn
v1.4.0 h1:
WT9HwE9SGECu3lg4d/dIA+jxlljEa1/ffXKmRjqdmIQ=
github.com/leodido/go-urn
v1.4.0/go.mod h1:
bvxc+MVxLKB4z00jd1z+Dvzr47oO32F/QSNjSBOlFxI=
...
...
@@ -86,51 +86,58 @@ github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors
v0.9.1/go.mod h1:
bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pmezard/go-difflib
v1.0.0 h1:
4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib
v1.0.0/go.mod h1:
iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/quic-go/qpack
v0.5.1 h1:
giqksBPnT/HDtZ6VhtFKgoLOWmlyo9Ei6u9PqzIMbhI=
github.com/quic-go/qpack
v0.5.1/go.mod h1:
+PC4XFrEskIVkcLzpEkbLqq1uCoxPhQuvK5rH1ZgaEg=
github.com/quic-go/quic-go
v0.56.0 h1:
q/TW+OLismmXAehgFLczhCDTYB3bFmua4D9lsNBWxvY=
github.com/quic-go/quic-go
v0.56.0/go.mod h1:
9gx5KsFQtw2oZ6GZTyh+7YEvOxWCL9WZAepnHxgAo6c=
github.com/robfig/cron/v3
v3.0.1 h1:
WdRxkvbJztn8LMz/QEvLN5sBU+xKpSqwwUO1Pjr4qDs=
github.com/robfig/cron/v3
v3.0.1/go.mod h1:
eQICP3HwyT7UooqI/z+Ov+PtYAWygg1TEWWzGIFLtro=
github.com/rogpeppe/go-internal
v1.6.1/go.mod h1:
xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc=
github.com/rogpeppe/go-internal
v1.8.1/go.mod h1:
JeRgkft04UBgHMgCIwADu4Pn6Mtm5d4nPKWu0nJ5d+o=
github.com/rogpeppe/go-internal
v1.9.0 h1:
73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8=
github.com/rogpeppe/go-internal
v1.9.0/go.mod h1:
WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs=
github.com/stretchr/objx
v0.1.0/go.mod h1:
HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx
v0.4.0/go.mod h1:
YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
github.com/stretchr/objx
v0.5.0 h1:
1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c=
github.com/stretchr/objx
v0.5.0/go.mod h1:
Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
github.com/stretchr/objx
v0.5.2 h1:
xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY=
github.com/stretchr/objx
v0.5.2/go.mod h1:
FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
github.com/stretchr/testify
v1.3.0/go.mod h1:
M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
github.com/stretchr/testify
v1.7.0/go.mod h1:
6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify
v1.7.1/go.mod h1:
6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify
v1.8.0/go.mod h1:
yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/stretchr/testify
v1.8.1/go.mod h1:
w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
github.com/stretchr/testify
v1.8.2/go.mod h1:
w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
github.com/stretchr/testify
v1.
10.0 h1:
Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA
=
github.com/stretchr/testify
v1.
8.4/go.mod h1:
sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo
=
github.com/stretchr/testify
v1.10.0/go.mod h1:
r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
github.com/stretchr/testify
v1.11.1 h1:
7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
github.com/stretchr/testify
v1.11.1/go.mod h1:
wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
github.com/twitchyliquid64/golang-asm
v0.15.1 h1:
SU5vSMR7hnwNxj24w34ZyCi/FmDZTkS4MhqMhdFk5YI=
github.com/twitchyliquid64/golang-asm
v0.15.1/go.mod h1:
a1lVb/DtPvCB8fslRZhAngC2+aY1QWCk3Cedj/Gdt08=
github.com/ugorji/go/codec
v1.3.
0
h1:
Qd2W2sQawAfG8XSvzwhBeoGq71zXOC/Q1E9y/wUcsUA
=
github.com/ugorji/go/codec
v1.3.
0
/go.mod h1:
pRBVtBSKl77K30Bv8R2P+cLSGaTtex6fsA2Wjqmfxj4=
github.com/ugorji/go/codec
v1.3.
1
h1:
waO7eEiFDwidsBN6agj1vJQ4AG7lh2yqXyOXqhgQuyY
=
github.com/ugorji/go/codec
v1.3.
1
/go.mod h1:
pRBVtBSKl77K30Bv8R2P+cLSGaTtex6fsA2Wjqmfxj4=
go.uber.org/atomic
v1.9.0/go.mod h1:
fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc=
go.uber.org/atomic
v1.11.0 h1:
ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE=
go.uber.org/atomic
v1.11.0/go.mod h1:
LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0=
golang.org/x/arch
v0.21.0 h1:
iTC9o7+wP6cPWpDWkivCvQFGAHDQ59SrSxsLPcnkArw=
golang.org/x/arch
v0.21.0/go.mod h1:
dNHoOeKiyja7GTvF9NJS1l3Z2yntpQNzgrjh1cU103A=
golang.org/x/crypto
v0.42.0 h1:
chiH31gIWm57EkTXpwnqf8qeuMUi0yekh6mT2AvFlqI=
golang.org/x/crypto
v0.42.0/go.mod h1:
4+rDnOTJhQCx2q7/j6rAN5XDw8kPjeaXEUR2eL94ix8=
golang.org/x/exp
v0.0.0-20250911091902-df9299821621 h1:
2id6c1/gto0kaHYyrixvknJ8tUK/Qs5IsmBtrc+FtgU=
golang.org/x/exp
v0.0.0-20250911091902-df9299821621/go.mod h1:
TwQYMMnGpvZyc+JpB/UAuTNIsVJifOlSkrZkhcvpVUk=
golang.org/x/net
v0.44.0 h1:
evd8IRDyfNBMBTTY5XRF1vaZlD+EmWx6x8PkhR04H/I=
golang.org/x/net
v0.44.0/go.mod h1:
ECOoLqd5U3Lhyeyo/QDCEVQ4sNgYsqvCZ722XogGieY=
golang.org/x/sync
v0.17.0 h1:
l60nONMj9l5drqw6jlhIELNv9I0A4OFgRsG9k2oT9Ug=
golang.org/x/sync
v0.17.0/go.mod h1:
9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
go.uber.org/mock
v0.6.0 h1:
hyF9dfmbgIX5EfOdasqLsWD6xqpNZlXblLB/Dbnwv3Y=
go.uber.org/mock
v0.6.0/go.mod h1:
KiVJ4BqZJaMj4svdfmHM0AUx4NJYO8ZNpPnZn1Z+BBU=
golang.org/x/arch
v0.23.0 h1:
lKF64A2jF6Zd8L0knGltUnegD62JMFBiCPBmQpToHhg=
golang.org/x/arch
v0.23.0/go.mod h1:
dNHoOeKiyja7GTvF9NJS1l3Z2yntpQNzgrjh1cU103A=
golang.org/x/crypto
v0.43.0 h1:
dduJYIi3A3KOfdGOHX8AVZ/jGiyPa3IbBozJ5kNuE04=
golang.org/x/crypto
v0.43.0/go.mod h1:
BFbav4mRNlXJL4wNeejLpWxB7wMbc79PdRGhWKncxR0=
golang.org/x/exp
v0.0.0-20251023183803-a4bb9ffd2546 h1:
mgKeJMpvi0yx/sU5GsxQ7p6s2wtOnGAHZWCHUM4KGzY=
golang.org/x/exp
v0.0.0-20251023183803-a4bb9ffd2546/go.mod h1:
j/pmGrbnkbPtQfxEe5D0VQhZC6qKbfKifgD0oM7sR70=
golang.org/x/net
v0.46.0 h1:
giFlY12I07fugqwPuWJi68oOnpfqFnJIJzaIIm2JVV4=
golang.org/x/net
v0.46.0/go.mod h1:
Q9BGdFy1y4nkUwiLvT5qtyhAnEHgnQ/zd8PfU6nc210=
golang.org/x/sync
v0.18.0 h1:
kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=
golang.org/x/sync
v0.18.0/go.mod h1:
9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
golang.org/x/sys
v0.6.0/go.mod h1:
oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys
v0.36.0 h1:
KVRy2GtZBrk1cBYA7MKu5bEZFxQk4NIDV6RLVcC8o0k=
golang.org/x/sys
v0.36.0/go.mod h1:
OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
golang.org/x/text
v0.29.0 h1:
1neNs90w9YzJ9BocxfsQNHKuAT4pkghyXc4nhZ6sJvk=
golang.org/x/text
v0.29.0/go.mod h1:
7MhJOA9CD2qZyOKYazxdYMF85OwPdEr9jTtBpO7ydH4=
google.golang.org/protobuf
v1.36.9 h1:
w2gp2mA27hUeUzj9Ex9FBjsBm40zfaDtEWow293U7Iw=
google.golang.org/protobuf
v1.36.9/go.mod h1:
fuxRtAxBytpl4zzqUh6/eyUujkJdNiuEkXntxiD/uRU=
golang.org/x/sys
v0.38.0 h1:
3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
golang.org/x/sys
v0.38.0/go.mod h1:
OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
golang.org/x/text
v0.30.0 h1:
yznKA/E9zq54KzlzBEAWn1NXSQ8DIp/NYMy88xJjl4k=
golang.org/x/text
v0.30.0/go.mod h1:
yDdHFIX9t+tORqspjENWgzaCVXgk0yYnYuSZ8UzzBVM=
golang.org/x/time
v0.12.0 h1:
ScB/8o8olJvc+CQPWrK3fPZNfh7qgwCrY0zJmoEQLSE=
golang.org/x/time
v0.12.0/go.mod h1:
CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg=
google.golang.org/protobuf
v1.36.10 h1:
AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aOOE=
google.golang.org/protobuf
v1.36.10/go.mod h1:
HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco=
gopkg.in/check.v1
v0.0.0-20161208181325-20d25e280405/go.mod h1:
Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1
v1.0.0-20180628173108-788fd7840127/go.mod h1:
Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1
v1.0.0-20201130134442-10cb98267c6c h1:
Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
gopkg.in/check.v1
v1.0.0-20201130134442-10cb98267c6c/go.mod h1:
JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
gopkg.in/errgo.v2
v2.1.0/go.mod h1:
hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
gopkg.in/yaml.v2
v2.2.8 h1:
obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10=
...
...
zhttp/zhttp.go
View file @
b95454c1
package
zhttp
import
(
"bytes"
"encoding/json"
"fmt"
"io"
"net/http"
"time"
"git.barsukov.pro/barsukov/zgo/zjson"
"git.barsukov.pro/barsukov/zgo/zutils"
)
var
DefaultClient
=
&
http
.
Client
{
Timeout
:
time
.
Second
*
10
}
...
...
@@ -56,7 +61,6 @@ func (c *ZClient) GetEmpty(url string) error {
return
fmt
.
Errorf
(
"status code: %v"
,
resp
.
StatusCode
)
}
func
(
c
*
ZClient
)
GetJson
(
target
any
,
url
string
)
error
{
var
err
error
var
resp
*
http
.
Response
...
...
@@ -68,6 +72,31 @@ func (c *ZClient) GetJson(target any, url string) error {
return
json
.
NewDecoder
(
resp
.
Body
)
.
Decode
(
&
target
)
}
func
(
c
*
ZClient
)
PostJson
(
target
any
,
url
string
,
body
*
bytes
.
Reader
,
headers
map
[
string
]
any
)
error
{
r
,
_
:=
http
.
NewRequest
(
"POST"
,
url
,
body
)
if
headers
!=
nil
{
if
_
,
ok
:=
headers
[
"Content-Type"
];
!
ok
{
headers
[
"Content-Type"
]
=
"application/json"
}
}
for
k
,
v
:=
range
headers
{
r
.
Header
.
Set
(
k
,
fmt
.
Sprintf
(
"%v"
,
v
))
}
resp
,
err
:=
c
.
httpClient
.
Do
(
r
)
if
err
!=
nil
{
return
err
}
defer
resp
.
Body
.
Close
()
if
!
zutils
.
InArray
(
resp
.
StatusCode
,
[]
int
{
http
.
StatusOK
,
http
.
StatusAccepted
,
http
.
StatusAccepted
})
{
b
,
_
:=
io
.
ReadAll
(
resp
.
Body
)
return
fmt
.
Errorf
(
"%s"
,
b
)
}
return
json
.
NewDecoder
(
resp
.
Body
)
.
Decode
(
target
)
}
func
GetJson
(
target
any
,
url
string
)
error
{
return
Default
()
.
GetJson
(
target
,
url
)
...
...
@@ -75,3 +104,17 @@ func GetJson(target any, url string) error {
func
GetEmpty
(
url
string
)
error
{
return
Default
()
.
GetEmpty
(
url
)
}
func
PostJson
(
target
any
,
url
string
,
body
*
bytes
.
Reader
,
headers
map
[
string
]
any
)
error
{
return
Default
()
.
PostJson
(
target
,
url
,
body
,
headers
)
}
func
PostJsonObj
(
target
any
,
url
string
,
body
any
,
headers
map
[
string
]
any
)
error
{
var
bodyReader
*
bytes
.
Reader
switch
t
:=
body
.
(
type
)
{
case
string
:
bodyReader
=
bytes
.
NewReader
([]
byte
(
t
))
default
:
bodyReader
=
zjson
.
BytesReader
(
body
)
}
return
PostJson
(
target
,
url
,
bodyReader
,
headers
)
}
zjson/go_json.go
deleted
100644 → 0
View file @
c314bf18
//go:build go_json
package
zjson
import
(
"unsafe"
"github.com/goccy/go-json"
)
func
ToBytes
(
obj
any
)
([]
byte
,
error
)
{
return
json
.
Marshal
(
obj
)
}
func
ToString
(
obj
any
)
(
string
,
error
)
{
if
b
,
err
:=
json
.
Marshal
(
obj
);
err
!=
nil
{
return
""
,
err
}
else
{
return
*
(
*
string
)(
unsafe
.
Pointer
(
&
b
)),
err
}
}
func
ToStringSafe
(
obj
any
)
(
string
,
error
)
{
if
b
,
err
:=
json
.
Marshal
(
obj
);
err
!=
nil
{
return
""
,
err
}
else
{
return
string
(
b
),
err
}
}
func
MustBytes
(
obj
any
)
[]
byte
{
b
,
_
:=
ToBytes
(
obj
)
return
b
}
func
MustString
(
obj
any
)
string
{
b
,
_
:=
ToBytes
(
obj
)
return
*
(
*
string
)(
unsafe
.
Pointer
(
&
b
))
}
func
MustStringSafe
(
obj
any
)
string
{
b
,
_
:=
ToBytes
(
obj
)
return
string
(
b
)
}
func
Pretty
(
i
any
)
string
{
ss
,
_
:=
json
.
MarshalIndent
(
i
,
""
,
" "
)
return
string
(
ss
)
}
zjson/json.go
View file @
b95454c1
//go:build !go_json
package
zjson
import
(
"bytes"
"encoding/json"
"unsafe"
)
...
...
@@ -33,13 +32,22 @@ func ToStringSafe(obj any) (string, error) {
return
string
(
b
),
err
}
func
MustBytes
(
obj
any
)
[]
byte
{
func
ToBytesReader
(
obj
any
)
(
*
bytes
.
Reader
,
error
)
{
b
,
err
:=
ToBytes
(
obj
)
if
err
!=
nil
{
return
nil
,
err
}
return
bytes
.
NewReader
(
b
),
nil
}
func
Bytes
(
obj
any
)
[]
byte
{
b
,
_
:=
ToBytes
(
obj
)
return
b
}
func
Must
String
(
obj
any
)
string
{
func
String
(
obj
any
)
string
{
b
,
_
:=
ToBytes
(
obj
)
return
*
(
*
string
)(
unsafe
.
Pointer
(
&
b
))
...
...
@@ -51,6 +59,12 @@ func MustStringSafe(obj any) string {
return
string
(
b
)
}
func
BytesReader
(
obj
any
)
*
bytes
.
Reader
{
r
,
_
:=
ToBytesReader
(
obj
)
return
r
}
func
Pretty
(
i
any
)
string
{
ss
,
_
:=
json
.
MarshalIndent
(
i
,
""
,
" "
)
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment