package something import ( "encoding/json" "fmt" "log" "net/http" ) // RequestData represents the JSON structure for incoming requests type RequestData struct { A int `json:"a"` B int `json:"b"` } // mainHandler handles HTTP requests and processes the data func mainHandler(w http.ResponseWriter, r *http.Request) { log.Println("Function called with request") // Decode the JSON body into the RequestData struct var data RequestData err := json.NewDecoder(r.Body).Decode(&data) if err != nil { http.Error(w, "Invalid JSON payload", http.StatusBadRequest) log.Println("Error decoding JSON:", err) return } log.Printf("Received data: %+v\n", data) // Compute the result result := data.A + data.B // Prepare the response response := map[string]int{"result": result} // Encode the response as JSON w.Header().Set("Content-Type", "application/json") err = json.NewEncoder(w).Encode(response) if err != nil { http.Error(w, "Error encoding response", http.StatusInternalServerError) log.Println("Error encoding JSON:", err) return } log.Println("Response sent successfully") } func init() { // Set up the HTTP server http.HandleFunc("/Main", mainHandler) fmt.Println("Server is running on http://localhost:8080") log.Fatal(http.ListenAndServe(":8080", nil)) }