Add xml response
This commit is contained in:
parent
eb6c9ad1fb
commit
4fb704c002
24
main.go
24
main.go
|
@ -5,6 +5,7 @@ import (
|
||||||
"database/sql"
|
"database/sql"
|
||||||
"encoding/base64"
|
"encoding/base64"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
"encoding/xml"
|
||||||
"fmt"
|
"fmt"
|
||||||
"html"
|
"html"
|
||||||
"io"
|
"io"
|
||||||
|
@ -101,16 +102,16 @@ func saveHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
}
|
}
|
||||||
|
|
||||||
values := save(buf)
|
values := save(buf)
|
||||||
|
b := &Response{
|
||||||
|
ID: values[0],
|
||||||
|
HASH: values[1],
|
||||||
|
URL: values[2],
|
||||||
|
SIZE: len(values[3]),
|
||||||
|
DELKEY: values[4],
|
||||||
|
}
|
||||||
|
|
||||||
switch output {
|
switch output {
|
||||||
case "json":
|
case "json":
|
||||||
b := &Response{
|
|
||||||
ID: values[0],
|
|
||||||
HASH: values[1],
|
|
||||||
URL: values[2],
|
|
||||||
SIZE: len(values[3]),
|
|
||||||
DELKEY: values[4],
|
|
||||||
}
|
|
||||||
|
|
||||||
w.Header().Set("Content-Type", "application/json")
|
w.Header().Set("Content-Type", "application/json")
|
||||||
err := json.NewEncoder(w).Encode(b)
|
err := json.NewEncoder(w).Encode(b)
|
||||||
|
@ -119,6 +120,15 @@ func saveHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
http.Error(w, err.Error(), http.StatusInternalServerError)
|
http.Error(w, err.Error(), http.StatusInternalServerError)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
case "xml":
|
||||||
|
x, err := xml.MarshalIndent(b, "", " ")
|
||||||
|
if err != nil {
|
||||||
|
http.Error(w, err.Error(), http.StatusInternalServerError)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
w.Header().Set("Content-Type", "application/xml")
|
||||||
|
w.Write(x)
|
||||||
|
|
||||||
default:
|
default:
|
||||||
io.WriteString(w, values[2]+"\n")
|
io.WriteString(w, values[2]+"\n")
|
||||||
|
|
Loading…
Reference in New Issue