适配POST模式传参,兼容serverchan模式传参
This commit is contained in:
parent
2960280f51
commit
afdefd0632
|
@ -3,3 +3,4 @@ module go/wecomchan
|
||||||
go 1.16
|
go 1.16
|
||||||
|
|
||||||
require github.com/go-redis/redis/v8 v8.10.0
|
require github.com/go-redis/redis/v8 v8.10.0
|
||||||
|
require github.com/julienschmidt/httprouter v1.3.0
|
||||||
|
|
|
@ -22,6 +22,8 @@ github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/
|
||||||
github.com/google/go-cmp v0.5.5 h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU=
|
github.com/google/go-cmp v0.5.5 h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU=
|
||||||
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||||
github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
|
github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
|
||||||
|
github.com/julienschmidt/httprouter v1.3.0 h1:U0609e9tgbseu3rBINet9P48AI/D3oJs4dN7jwJOQ1U=
|
||||||
|
github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM=
|
||||||
github.com/nxadm/tail v1.4.4 h1:DQuhQpB1tVlglWS2hLQ5OV6B5r8aGxSrPc5Qo6uTN78=
|
github.com/nxadm/tail v1.4.4 h1:DQuhQpB1tVlglWS2hLQ5OV6B5r8aGxSrPc5Qo6uTN78=
|
||||||
github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A=
|
github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A=
|
||||||
github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
|
github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
|
||||||
|
|
|
@ -15,6 +15,7 @@ import (
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/go-redis/redis/v8"
|
"github.com/go-redis/redis/v8"
|
||||||
|
"github.com/julienschmidt/httprouter"
|
||||||
)
|
)
|
||||||
|
|
||||||
/*------------------------------- 环境变量配置 begin -------------------------------*/
|
/*------------------------------- 环境变量配置 begin -------------------------------*/
|
||||||
|
@ -236,22 +237,29 @@ func InitJsonData(msgType string) JsonData {
|
||||||
func main() {
|
func main() {
|
||||||
// 设置日志内容显示文件名和行号
|
// 设置日志内容显示文件名和行号
|
||||||
log.SetFlags(log.LstdFlags | log.Lshortfile)
|
log.SetFlags(log.LstdFlags | log.Lshortfile)
|
||||||
wecomChan := func(res http.ResponseWriter, req *http.Request) {
|
wecomChan := func(res http.ResponseWriter, req *http.Request, ps httprouter.Params) {
|
||||||
|
_ = req.ParseForm()
|
||||||
|
sendkey := req.Form.Get("sendkey")
|
||||||
|
urlpath := ps.ByName("urlpath")
|
||||||
|
if len(sendkey) == 0 && len(urlpath) > 6 && urlpath != "wecomchan" {
|
||||||
|
sendkey = urlpath[1 : len(urlpath)-5]
|
||||||
|
}
|
||||||
|
if sendkey != Sendkey {
|
||||||
|
log.Panicln("sendkey 错误,请检查")
|
||||||
|
}
|
||||||
|
req.ParseForm()
|
||||||
|
msgContent := req.Form.Get("msg")
|
||||||
|
if len(msgContent) == 0 {
|
||||||
|
msgContent = req.Form.Get("title") + "\n" + req.Form.Get("desc")
|
||||||
|
}
|
||||||
|
msgType := req.Form.Get("msg_type")
|
||||||
|
log.Println("mes_type=", msgType)
|
||||||
|
// 默认mediaId为空
|
||||||
|
mediaId := ""
|
||||||
// 获取token
|
// 获取token
|
||||||
accessToken := GetAccessToken()
|
accessToken := GetAccessToken()
|
||||||
// 默认token有效
|
// 默认token有效
|
||||||
tokenValid := true
|
tokenValid := true
|
||||||
|
|
||||||
_ = req.ParseForm()
|
|
||||||
sendkey := req.FormValue("sendkey")
|
|
||||||
if sendkey != Sendkey {
|
|
||||||
log.Panicln("sendkey 错误,请检查")
|
|
||||||
}
|
|
||||||
msgContent := req.FormValue("msg")
|
|
||||||
msgType := req.FormValue("msg_type")
|
|
||||||
log.Println("mes_type=", msgType)
|
|
||||||
// 默认mediaId为空
|
|
||||||
mediaId := ""
|
|
||||||
if msgType != "image" {
|
if msgType != "image" {
|
||||||
log.Println("消息类型不是图片")
|
log.Println("消息类型不是图片")
|
||||||
} else {
|
} else {
|
||||||
|
@ -297,6 +305,8 @@ func main() {
|
||||||
res.Header().Set("Content-type", "application/json")
|
res.Header().Set("Content-type", "application/json")
|
||||||
_, _ = res.Write([]byte(postStatus))
|
_, _ = res.Write([]byte(postStatus))
|
||||||
}
|
}
|
||||||
http.HandleFunc("/wecomchan", wecomChan)
|
router := httprouter.New()
|
||||||
log.Fatal(http.ListenAndServe(":8080", nil))
|
router.GET("/*urlpath", wecomChan)
|
||||||
|
router.POST("/*urlpath", wecomChan)
|
||||||
|
log.Fatal(http.ListenAndServe(":8080", router))
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue