feat: Implement HTTP POST request to register as reduce node

This commit is contained in:
Alex Wellnitz 2025-02-11 15:22:48 +01:00
parent 88caecde51
commit a4f70d0376

View File

@ -1,6 +1,15 @@
package reducenode
import "github.com/gin-gonic/gin"
import (
"bytes"
"encoding/json"
"fmt"
"log"
"net/http"
"github.com/alexohneander/flotte/pkg/types/request"
"github.com/gin-gonic/gin"
)
func Start() {
err := registerAsReduceNode()
@ -15,5 +24,34 @@ func Start() {
}
func registerAsReduceNode() error {
// http post request to general-node
serviceRegisterReq := request.ServiceRegister{
Name: "reduce-01",
NodeType: "reduce",
Address: "localhost",
Port: 4001,
}
json_data, err := json.Marshal(serviceRegisterReq)
if err != nil {
log.Fatal(err)
return err
}
resp, err := http.Post("http://localhost:8000/service", "application/json",
bytes.NewBuffer(json_data))
if err != nil {
log.Fatal(err)
return err
}
defer resp.Body.Close()
var res map[string]interface{}
json.NewDecoder(resp.Body).Decode(&res)
fmt.Println(res)
return nil
}