MCPcopy Create free account
hub / github.com/BryanMwangi/pine / main

Function main

Examples/UsingPineClient/ClientServer/main.go:15–79  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

13}
14
15func main() {
16 app := pine.New()
17 app.Get("/forwardHello", func(c *pine.Ctx) error {
18 // Forward the request to the server on port 3000
19 client := pine.NewClient()
20 client.Request().SetRequestURI("http://localhost:3000/hello")
21 client.Request().SetMethod("GET")
22 headers := map[string]string{
23 "X-API-KEY": "1234567890",
24 }
25 client.Request().SetHeaders(headers)
26 err := client.SendRequest()
27 if err != nil {
28 return err
29 }
30 code, body, err := client.ReadResponse()
31 if err != nil {
32 return err
33 }
34 var Message message
35 err = json.Unmarshal(body, &Message)
36 if err != nil {
37 return err
38 }
39 return c.JSON(Message, code)
40 })
41
42 app.Post("/forwardMessage", func(c *pine.Ctx) error {
43 var reqBody message
44 err := json.NewDecoder(c.Request.Body).Decode(&reqBody)
45 if err != nil {
46 return err
47 }
48 // Forward the request to the server on port 3000
49 client := pine.NewClient()
50 client.Request().SetRequestURI("http://localhost:3000/send")
51 client.Request().SetMethod("POST")
52 err = client.Request().JSON(reqBody)
53 if err != nil {
54 fmt.Println(err)
55 return err
56 }
57
58 err = client.SendRequest()
59 if err != nil {
60 fmt.Println(err)
61 return err
62 }
63 code, body, err := client.ReadResponse()
64 if err != nil {
65 fmt.Println(err)
66 return err
67 }
68 var Message message
69 err = json.Unmarshal(body, &Message)
70 if err != nil {
71 fmt.Println(err)
72 return err

Callers

nothing calls this directly

Calls 12

RequestMethod · 0.95
SendRequestMethod · 0.95
ReadResponseMethod · 0.95
NewFunction · 0.92
NewClientFunction · 0.92
SetRequestURIMethod · 0.80
SetMethodMethod · 0.80
SetHeadersMethod · 0.80
GetMethod · 0.45
JSONMethod · 0.45
PostMethod · 0.45
StartMethod · 0.45

Tested by

no test coverage detected