package main import ( "encoding/json" "flag" "fmt" "github.com/thequux/qddns/common" "io/ioutil" "net/http" "os" "strings" ) var server = flag.String("server", "https://dyn.thequux.com", "The URL of the DDNS server") var domain = flag.String("domain", "", "The domain to update") var token = flag.String("token", "", "The authorization token") func main() { flag.Parse() req, err := http.NewRequest("POST", *server+"/update/"+*domain, strings.NewReader("")) if err != nil { fmt.Fprintf(os.Stderr, "Failed to create request: %v", err) os.Exit(1) } req.Header["Authorization"] = []string{"bearer " + *token} resp, err := http.DefaultClient.Do(req) if err != nil { fmt.Fprintf(os.Stdout, "Failed to send request: %v", err) os.Exit(1) } body, err := ioutil.ReadAll(resp.Body) if err != nil { fmt.Fprintf(os.Stderr, "Failed to read response") os.Exit(1) } rj := common.Response{} json.Unmarshal(body, &rj) fmt.Printf("%v\n", rj) }