Golang: terminar o cancelar una solicitud HTTP

¿Cuál es la forma de abortar miAPI sirviendo con algún mensaje de error?

Enlace para llamar a mi servicio:

http://creative.test.spoti.io/api/getVastPlayer?add=
    {"Json":Json}&host=api0.spoti.io&domain=domain&userAgent=userAgent&mobile=true

Para llamar a mi servicio, el cliente debe enviar un Json y algunos parámetros.

Quiero probar si los parámetros que obtengo son correctos, si no, quiero enviar un mensaje de error.

La respuesta debe ser un código Json{"Result":"Result","Error":"error message"}

Lo intentélog.fatal yos.Exit(1) detienen el servicio, no solo la solicitud de llamada.panic aborta la llamada pero me impide enviar unhttp.ResponseWriter cual es mi mensaje de error

Leí algo sobrepánico, aplazar, recuperarse pero realmente no sé cómo puedo usarlos para resolver este problema.

return trabajos:

mobile :=query.Get("mobile")
if mobile=="mobile" {
            str:=`{"Resultt":"","Error":"No valide Var"}`
            fmt.Fprint(w, str)      
            fmt.Println("No successfull Operation!!")
            return}  

Pero puedo usarlo solo en la función principal, porque en las otras funciones sale solo de la función, no de la función de llamada (solicitud).

Respuestas a la pregunta(1)

Su respuesta a la pregunta