diff --git a/controller/hitokoto.go b/controller/hitokoto.go index 55d5f12..7a0569d 100644 --- a/controller/hitokoto.go +++ b/controller/hitokoto.go @@ -15,13 +15,14 @@ func Hitokoto(msg *openwechat.Message) { resp, err := http.Get(url) if err != nil { - err = fmt.Errorf("请求API失败, 失败原因: %s", err.Error()) + err = fmt.Errorf("请求链接错误: %s", err) msg.ReplyText(err.Error()) return } defer resp.Body.Close() + // 读取返回数据 resolutionBytes, err := ioutil.ReadAll(resp.Body) if err != nil { err = fmt.Errorf("读取返回数据错误: %s", err) @@ -29,7 +30,8 @@ func Hitokoto(msg *openwechat.Message) { return } - var response structs.Hitokoto + // 解析返回数据 + var response structs.HitokotoResponse err = json.Unmarshal(resolutionBytes, &response) if err != nil { err = fmt.Errorf("解析返回数据错误: %s", err) diff --git a/main b/main index 1581e2b..407bd28 100755 Binary files a/main and b/main differ diff --git a/storage.json b/storage.json index cf8cc42..cf6fb26 100644 --- a/storage.json +++ b/storage.json @@ -1 +1 @@ -{"Jar":{"PsList":null,"Entries":{"qq.com":{"qq.com;/;webwx_data_ticket":{"Name":"webwx_data_ticket","Value":"gSdjmChi6Ki3WqeP0wQaHpMp","Domain":"qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-18T01:09:26Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:09:26.636509+08:00"},"qq.com;/;wxuin":{"Name":"wxuin","Value":"2630901142","Domain":"qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-18T01:07:27Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:09:26.314646+08:00"},"wx.qq.com;/;mm_lang":{"Name":"mm_lang","Value":"zh_CN","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-18T01:07:27Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:09:26.314646+08:00"},"wx.qq.com;/;webwx_auth_ticket":{"Name":"webwx_auth_ticket","Value":"CIsBEM2e+tcLGmBNzB26Ez5W19ULRyqD37BB+3xiYVizwsisBqso8n3krkALMdyrqf1D7ZDLYbVu/kMuOXmtCict5xUBwbyOSr8SSBxewc6AUSJyd9BdnW+hzV0f5Intg6/aa6mO0cv+et0=","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2033-07-14T13:07:27Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:09:26.314646+08:00"},"wx.qq.com;/;webwxuvid":{"Name":"webwxuvid","Value":"0978248fcda8a604ef24666a4ab22102ba8ccf6fd00d86a365535129c3e25bc0","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2033-07-14T10:24:39Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:09:26.314646+08:00"},"wx.qq.com;/;wxloadtime":{"Name":"wxloadtime","Value":"1689599247_expired","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-18T01:07:30Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:09:26.314646+08:00"},"wx.qq.com;/;wxpluginkey":{"Name":"wxpluginkey","Value":"1689594001","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-18T01:09:26Z","Creation":"2023-07-17T18:24:42.68628+08:00","LastAccess":"2023-07-17T21:09:26.636509+08:00"},"wx.qq.com;/;wxsid":{"Name":"wxsid","Value":"h0/iGxg3lQHGKzO4","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-18T01:09:26Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:09:26.636509+08:00"},"wx.qq.com;/;wxuin":{"Name":"wxuin","Value":"2630901142","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-20T13:09:26Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:09:26.636509+08:00"}}},"NextSeqNum":9},"BaseRequest":{"Uin":2630901142,"Sid":"h0/iGxg3lQHGKzO4","Skey":"@crypt_ed112e10_70371682ced2c28907eacc3630ba18bb","DeviceID":"e084625014365036"},"LoginInfo":{"Ret":0,"WxUin":2630901142,"IsGrayScale":1,"Message":"","SKey":"@crypt_ed112e10_70371682ced2c28907eacc3630ba18bb","WxSid":"h0/iGxg3lQHGKzO4","PassTicket":"5h5JaNJ59daDaZzOMjFdn3l0ZpQQffcU8%2FnCHhjzkOB9Vp4tWT%2BIcyc5iAJjC7%2Bb"},"WechatDomain":"wx.qq.com","SyncKey":{"Count":14,"List":[{"Key":1,"Val":795811402},{"Key":2,"Val":795811613},{"Key":3,"Val":795811458},{"Key":11,"Val":795811436},{"Key":19,"Val":33587},{"Key":23,"Val":1689599247},{"Key":24,"Val":1689599366},{"Key":27,"Val":2276610},{"Key":201,"Val":1689599366},{"Key":202,"Val":1689597808},{"Key":203,"Val":1689597346},{"Key":206,"Val":101},{"Key":1000,"Val":1689594001},{"Key":1001,"Val":1689594122}]},"UUID":"oaxczZAxHQ=="} +{"Jar":{"PsList":null,"Entries":{"qq.com":{"qq.com;/;webwx_data_ticket":{"Name":"webwx_data_ticket","Value":"gScwfFd9nXkJCUOd1oVf5L7t","Domain":"qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-18T01:54:32Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:54:32.984768+08:00"},"qq.com;/;wxuin":{"Name":"wxuin","Value":"2630901142","Domain":"qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-18T01:35:25Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:54:32.792264+08:00"},"wx.qq.com;/;mm_lang":{"Name":"mm_lang","Value":"zh_CN","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-18T01:35:25Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:54:32.792264+08:00"},"wx.qq.com;/;webwx_auth_ticket":{"Name":"webwx_auth_ticket","Value":"CIsBEJWgwhcaYPVvIZLGcF1/NAdZgeDL6wb7fGJhWLPCyKwGqyjyfeSuQAsx3Kup/UPtkMthtW7+Qy45ea0KJy3nFQHBvI5KvxJIHF7BzoBRInJ30F2db6HNXR/kie2Dr9prqY7Ry/563Q==","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2033-07-14T13:35:25Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:54:32.792264+08:00"},"wx.qq.com;/;webwxuvid":{"Name":"webwxuvid","Value":"0978248fcda8a604ef24666a4ab22102ba8ccf6fd00d86a365535129c3e25bc0","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2033-07-14T10:24:39Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:54:32.792264+08:00"},"wx.qq.com;/;wxloadtime":{"Name":"wxloadtime","Value":"1689600925_expired","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-18T01:35:34Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:54:32.792264+08:00"},"wx.qq.com;/;wxpluginkey":{"Name":"wxpluginkey","Value":"1689598801","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-18T01:54:32Z","Creation":"2023-07-17T18:24:42.68628+08:00","LastAccess":"2023-07-17T21:54:32.984768+08:00"},"wx.qq.com;/;wxsid":{"Name":"wxsid","Value":"EI6FNyTqku/LoiCF","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-18T01:54:32Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:54:32.984768+08:00"},"wx.qq.com;/;wxuin":{"Name":"wxuin","Value":"2630901142","Domain":"wx.qq.com","Path":"/","SameSite":"","Secure":true,"HttpOnly":false,"Persistent":true,"HostOnly":false,"Expires":"2023-07-20T13:54:32Z","Creation":"2023-07-17T18:24:39.997331+08:00","LastAccess":"2023-07-17T21:54:32.984768+08:00"}}},"NextSeqNum":9},"BaseRequest":{"Uin":2630901142,"Sid":"EI6FNyTqku/LoiCF","Skey":"@crypt_ed112e10_e52bebd020af0bca28a4811efa3bcf8d","DeviceID":"e200182831077850"},"LoginInfo":{"Ret":0,"WxUin":2630901142,"IsGrayScale":1,"Message":"","SKey":"@crypt_ed112e10_e52bebd020af0bca28a4811efa3bcf8d","WxSid":"EI6FNyTqku/LoiCF","PassTicket":"Sp%2Bb78bO4AR0ogQYhGtuX7HUz8IOA9DbtJ9CvJjQ%2FofmFVNO%2BxuLKkDeCwpp6WV6"},"WechatDomain":"wx.qq.com","SyncKey":{"Count":14,"List":[{"Key":1,"Val":795811402},{"Key":2,"Val":795811892},{"Key":3,"Val":795811747},{"Key":11,"Val":795811661},{"Key":19,"Val":33587},{"Key":23,"Val":1689600925},{"Key":24,"Val":1689602072},{"Key":27,"Val":2276868},{"Key":201,"Val":1689602072},{"Key":202,"Val":1689601088},{"Key":203,"Val":1689600009},{"Key":206,"Val":101},{"Key":1000,"Val":1689598801},{"Key":1001,"Val":1689598923}]},"UUID":"AfqMExE6OA=="} diff --git a/structs/hitokoto.go b/structs/hitokoto.go index c7b5772..4390ed9 100644 --- a/structs/hitokoto.go +++ b/structs/hitokoto.go @@ -1,6 +1,16 @@ package structs -type Hitokoto struct { - Hitokoto string `json:"hitokoto"` - From string `json:"from"` +type HitokotoResponse struct { + ID int `json:"id"` + UUID string `json:"uuid"` + Hitokoto string `json:"hitokoto"` + Type string `json:"type"` + From string `json:"from"` + FromWho any `json:"from_who"` + Creator string `json:"creator"` + CreatorUID int `json:"creator_uid"` + Reviewer int `json:"reviewer"` + CommitFrom string `json:"commit_from"` + CreatedAt string `json:"created_at"` + Length int `json:"length"` }