EgnyteWebHookHandler/main/main.go

56 lines
1.4 KiB
Go
Raw Normal View History

package main
import (
"fmt"
"io"
"log"
"net/http"
2023-12-04 15:03:40 -07:00
"time"
"github.com/gorilla/mux"
)
func readDataStream(resp http.ResponseWriter, request *http.Request) {
reqBody, _ := io.ReadAll(request.Body)
// var jsonBody = json.NewDecoder(request.Body)
2023-12-04 15:03:40 -07:00
fmt.Println(string(reqBody))
}
2023-12-04 15:03:40 -07:00
func HealthCheck(resp http.ResponseWriter, request *http.Request) {
var t = time.Now().String()
var MessageText = t + ": Health Check from " + request.RemoteAddr
// reqBody, _ := io.ReadAll(request.Body)
2023-12-04 15:03:40 -07:00
fmt.Println(http.StatusOK, MessageText)
resp.WriteHeader(http.StatusOK)
resp.Write([]byte(MessageText))
}
2023-12-12 13:29:55 -07:00
func CatchError(resp http.ResponseWriter, request *http.Request) {
var LogText = "got bad request from " + request.RemoteAddr + ". Method: " + request.Method
fmt.Println(http.StatusBadRequest, LogText)
var MessageText = "Invalid Request, please read the docs..."
resp.WriteHeader(http.StatusBadRequest)
resp.Write([]byte(MessageText))
}
func handleRequests() {
// Start new Mux router
mainrouter := mux.NewRouter().StrictSlash(true)
mainrouter.HandleFunc("/", readDataStream).Methods("POST")
2023-12-04 15:03:40 -07:00
mainrouter.HandleFunc("/healthcheck", HealthCheck).Methods("GET")
2023-12-12 13:29:55 -07:00
mainrouter.HandleFunc("/", CatchError)
log.Fatal(http.ListenAndServe(":10000", mainrouter))
}
func main() {
2023-12-12 13:29:55 -07:00
var t = time.Now().String()
fmt.Println("MPE x Egnyte x PowerApps - Mux Router starting: " + t)
handleRequests()
}