GoDaddy の API を介して DNS を更新しようとしています (ホーム ネットワークは動的 IP 上にあります)。
http://teanazar.com/2016/05/godaddy-ddns-updater/にあるスクリプトを cygwin で実行すると、正常に更新できます。
ただし、私は物事を単純化しようとしており、代わりにpowershellでこれを行っています。
ただし、次のスクリプトを使用しようとすると:
$IP = Invoke-WebRequest http://api.ipify.org?format=json
$IP2 = ConvertFrom-JSON $ip
$domain = 'example.com'
$type = 'A'
$name = '@'
$key = 'key'
$secret = 'secret'
$Request = @{ttl='600';data=$ip2.ip;priority='1'}
$JSON = Convertto-Json $request
$headers = @{}
$headers["Authorization"] = 'sso-key ' + $key + ':' + $secret
Invoke-WebRequest https://api.godaddy.com/v1/domains/$domain/records/$Type/$Name -contenttype "application/json" -method put -body $json -headers $headers
これまでのところ、各問題に対処してきましたが、それが認証されていることはわかっています. しかし、実行すると、「リモートサーバーがエラーを返しました: (422) Unprocessable Entity