From 14ee6319cca55ea5ca0c5ec5885560a5aefe6014 Mon Sep 17 00:00:00 2001 From: 5elenay <5elenay@protonmail.com> Date: Fri, 20 Aug 2021 21:12:41 +0300 Subject: [PATCH] added http handler. --- client.go | 16 ++++++++++++++++ http.go | 47 +++++++++++++++++++++++++++++++++++++++++++++++ types.go | 9 --------- websocket.go | 2 -- 4 files changed, 63 insertions(+), 11 deletions(-) create mode 100644 client.go create mode 100644 http.go delete mode 100644 types.go diff --git a/client.go b/client.go new file mode 100644 index 0000000..94e72fe --- /dev/null +++ b/client.go @@ -0,0 +1,16 @@ +package revoltgo + +import ( + "github.com/sacOO7/gowebsocket" +) + +const ( + WS_URL = "wss://ws.revolt.chat" + API_URL = "https://api.revolt.chat" +) + +// Client struct +type Client struct { + Token string + Socket gowebsocket.Socket +} diff --git a/http.go b/http.go new file mode 100644 index 0000000..53cdee8 --- /dev/null +++ b/http.go @@ -0,0 +1,47 @@ +package revoltgo + +import ( + "bytes" + "io/ioutil" + "net/http" + "strings" +) + +// Send http request +func (c *Client) Request(method, path, data string) ([]byte, error) { + var reqBody *bytes.Buffer + + // Check method + if strings.EqualFold(method, "get") { + reqBody = bytes.NewBuffer([]byte(data)) + } else { + reqBody = nil + } + + // Prepare request + req, err := http.NewRequest(method, API_URL+path, reqBody) + if err != nil { + return []byte(""), err + } + + req.Header.Set("X-Bot-Token", c.Token) + req.Header.Set("Content-Type", "application/json") + + client := &http.Client{} + + // Send request + resp, err := client.Do(req) + + if err != nil { + return []byte(""), err + } + + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + + if err != nil { + return []byte(""), err + } + + return body, nil +} diff --git a/types.go b/types.go deleted file mode 100644 index ec890de..0000000 --- a/types.go +++ /dev/null @@ -1,9 +0,0 @@ -package revoltgo - -import "github.com/sacOO7/gowebsocket" - -// Client struct -type Client struct { - Token string - Socket gowebsocket.Socket -} diff --git a/websocket.go b/websocket.go index e432386..0e98a9b 100644 --- a/websocket.go +++ b/websocket.go @@ -7,8 +7,6 @@ import ( "github.com/sacOO7/gowebsocket" ) -const WS_URL = "wss://ws.revolt.chat" - func (c *Client) Start() { // Create new socket c.Socket = gowebsocket.New(WS_URL)