How to handle HTTP Get response?
Fprintln allows you to direct output to any writer. Feel free to choose the available port of your choice - higher ports will make it easier to bypass the built-in security functionality in any system. net/http directs requests using a URI or URL endpoint to helper functions, which must implement the http.ResponseWriter and http.Request methods.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> </head> <body> <div> <form method="POST" action="/"> <label>Name</label><input name="name" type="text" value=""> <label>Name</label><input name="" type="text" value=""> <input type="submit" value="submit" /> </form> </div> </body> </html>
Example
package main
import (
"fmt"
"io/ioutil"
"log"
"net/http"
)
func ServeHTTP(w http.ResponseWriter, r *http.Request) {
url := "http://country.io/capital.json"
response, err := http.Get(url)
if err != nil {
log.Fatal(err)
}
defer response.Body.Close()
responseData, err := ioutil.ReadAll(response.Body)
if err != nil {
log.Fatal(err)
}
responseString := string(responseData)
fmt.Fprint(w, responseString)
}
func main() {
http.HandleFunc("/", ServeHTTP)
if err := http.ListenAndServe(":8080", nil); err != nil {
log.Fatal(err)
}
}