-
Notifications
You must be signed in to change notification settings - Fork 0
/
query.go
58 lines (42 loc) · 1014 Bytes
/
query.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
package pinata
import (
"fmt"
"io"
"net/http"
)
type Params struct {
Key string
Value interface{}
SecondValue *interface{}
Operator string
}
type QueryOneParams struct {
Value interface{} `json:"value"`
Operator string `json:"op"`
}
type QueryTwoParams struct {
Value interface{} `json:"value"`
SecondValue interface{} `json:"secondValue"`
Operator string `json:"op"`
}
func (pinata *Pinata) queryPinata(query *string) ([]byte, error) {
var result []byte = nil
clientRequest := &http.Client{}
url := string(QUERYFILES) + "?" + *query
fmt.Println(url)
req, errReq := http.NewRequest(string(GET), url, nil)
if errReq != nil {
return nil, errReq
}
req.Header.Add("Authorization", "Bearer "+pinata.authentication)
res, errRes := clientRequest.Do(req)
if errRes != nil {
return nil, errRes
}
defer res.Body.Close()
result, errReadBody := io.ReadAll(res.Body)
if errReadBody != nil {
return nil, errReadBody
}
return result, nil
}