package main import ( "context" "log" "net/http" ) func withCORS(h http.HandlerFunc) http.HandlerFunc { return func(w http.ResponseWriter, r *http.Request) { w.Header().Set("Access-Control-Allow-Origin", "*") h(w, r) } } func main() { ctx := context.Background() DbInit(ctx) http.HandleFunc("/new/user", withCORS(HttpHandleUserNew)) http.HandleFunc("/new/token", withCORS(HttpHandleTokenNew)) http.HandleFunc("/new/group", withCORS(HttpHandeGroupCreate)) http.HandleFunc("/mod/user/appearence", withCORS(HttpHandleUserModifyAppearance)) http.HandleFunc("/mod/user/about", withCORS(HttpHandleUserModifyAbout)) http.HandleFunc("/mod/group/addusers", withCORS(HttpHandleGroupAddUser)) http.HandleFunc("/mod/group/removeusers", withCORS(HttpHandleGroupRemoveUser)) http.HandleFunc("/mod/group/color", withCORS(HttpHandleGroupChangeColor)) http.HandleFunc("/mod/group/owner", withCORS(HttpHandleGroupChangeOwner)) http.HandleFunc("/get/groups", withCORS(HttpHandleGroupsGetWithoutMembers)) http.HandleFunc("/get/group/members", withCORS(HttpHandleGroupMembersGet)) http.HandleFunc("/del/group", withCORS(HttpHandleGroupDelete)) http.HandleFunc("/msg/group", withCORS(HttpHandleGroupMessage)) http.HandleFunc("/ws", ServeWsConnection) log.Println("listening on :8080") log.Fatal(http.ListenAndServe(":8080", nil)) }