WebWorker
Purpose
Basic Usage
type APIWorker struct {
act.WebWorker
}
func (w *APIWorker) HandleGet(from gen.PID, writer http.ResponseWriter, request *http.Request) error {
// Process GET request
user := w.lookupUser(request.URL.Query().Get("id"))
json.NewEncoder(writer).Encode(user)
return nil
}
func (w *APIWorker) HandlePost(from gen.PID, writer http.ResponseWriter, request *http.Request) error {
// Process POST request
var data CreateRequest
json.NewDecoder(request.Body).Decode(&data)
result := w.createResource(data)
writer.WriteHeader(http.StatusCreated)
json.NewEncoder(writer).Encode(result)
return nil
}
func (w *APIWorker) HandleDelete(from gen.PID, writer http.ResponseWriter, request *http.Request) error {
id := request.URL.Query().Get("id")
w.deleteResource(id)
writer.WriteHeader(http.StatusNoContent)
return nil
}Available Callbacks
Error Handling
Using with act.Pool
Handling Non-HTTP Messages
Implementation Details
Last updated
Was this helpful?