318
}
319
320
>
func (h *httpHandler) handleRequest(writer http.ResponseWriter, request *http.Request) {
server.go
321
>
if request.Method != "POST" {
322
h.WriteFailure(writer, request, nexus.NewHandlerErrorf(nexus.HandlerErrorTypeBadRequest, "invalid request method: expected POST, got %q", request.Method))
323
return
324
}
325
>
parts := strings.Split(request.URL.EscapedPath(), "/")
server.go
326
>
// First part is empty (due to leading /)
327
>
if len(parts) < 3 {
328
h.WriteFailure(writer, request, nexus.NewHandlerErrorf(nexus.HandlerErrorTypeNotFound, "not found"))
329
return
330
}
331
>
service, err := url.PathUnescape(parts[1])
server.go
332
>
if err != nil {
333
h.WriteFailure(writer, request, nexus.NewHandlerErrorf(nexus.HandlerErrorTypeBadRequest, "failed to parse URL path"))
334
return
335
}
336
>
operation, err := url.PathUnescape(parts[2])
server.go
337
>
if err != nil {
338
h.WriteFailure(writer, request, nexus.NewHandlerErrorf(nexus.HandlerErrorTypeBadRequest, "failed to parse URL path"))
339
return