/
main.go
111 lines (86 loc) · 1.96 KB
/
main.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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
package main
import (
"bufio"
"encoding/json"
"fmt"
"os"
"strings"
"github.com/agustfricke/snet-client-api/cli"
"github.com/agustfricke/snet-client-api/req"
)
func main() {
cli.Cli()
cli.Welcome()
var url string
var token string
reader := bufio.NewReader(os.Stdin)
for {
if (url == "") {
fmt.Print("session url -> ")
fmt.Scanf("%v\n", &url)
}
if (token == "") {
fmt.Print("jwt token -> ")
fmt.Scanf("%s", &token)
token = strings.TrimRight(token, "%")
}
var method string
fmt.Print("POST(1) GET(2) PUT(3) DELETE(4) -> ")
fmt.Scanf("%v\n", &method)
if method == "1" || method == "3" {
data := make(map[string]string)
for {
var key string
fmt.Print("key -> ")
key, _ = reader.ReadString('\n')
key = strings.TrimSpace(key)
if key == "" {
break
}
var value string
fmt.Printf("value for {\"%s\"} -> ", key)
value, _ = reader.ReadString('\n')
value = strings.TrimSpace(value)
data[key] = value
}
jsonData, err := json.Marshal(data)
if err != nil {
fmt.Println("Error converting data to JSON:", err)
return
}
// POST
if method == "1" {
req.Post(url, token, jsonData)
// PUT
} else if method == "3" {
req.Put(url, token, jsonData)
}
// GET
} else if method == "2" {
req.Get(url, token)
// DELETE
} else if method == "4" {
req.Delete(url, token)
}
var ok string
fmt.Print("exit? {y to exit} -> ")
fmt.Scanf("%v\n", &ok)
if ok == "y" {
cli.Bye()
break
}
var to string
fmt.Print("update jwt token? {y to update} -> ")
fmt.Scanf("%v\n", &to)
if to == "y" {
token = ""
}
var u string
fmt.Print("update url {y to update} -> ")
fmt.Scanf("%v\n", &u)
if(u == "y") {
url = ""
}
cli.Cli()
}
}