added http handler.
This commit is contained in:
parent
a3cf0d8e4e
commit
14ee6319cc
16
client.go
Normal file
16
client.go
Normal file
@ -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
|
||||||
|
}
|
47
http.go
Normal file
47
http.go
Normal file
@ -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
|
||||||
|
}
|
9
types.go
9
types.go
@ -1,9 +0,0 @@
|
|||||||
package revoltgo
|
|
||||||
|
|
||||||
import "github.com/sacOO7/gowebsocket"
|
|
||||||
|
|
||||||
// Client struct
|
|
||||||
type Client struct {
|
|
||||||
Token string
|
|
||||||
Socket gowebsocket.Socket
|
|
||||||
}
|
|
@ -7,8 +7,6 @@ import (
|
|||||||
"github.com/sacOO7/gowebsocket"
|
"github.com/sacOO7/gowebsocket"
|
||||||
)
|
)
|
||||||
|
|
||||||
const WS_URL = "wss://ws.revolt.chat"
|
|
||||||
|
|
||||||
func (c *Client) Start() {
|
func (c *Client) Start() {
|
||||||
// Create new socket
|
// Create new socket
|
||||||
c.Socket = gowebsocket.New(WS_URL)
|
c.Socket = gowebsocket.New(WS_URL)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user