如何使用 Softlayer API 和 Powershell 删除 DNS 记录

How to delete a DNS record using Softlayer API with Powershell

我需要编写一个 PowerShell 脚本,它使用 Softlayer REST API 从 Softlayer 云中删除 DNS 记录。

下面的命令应该可以达到我的目的。我已经 $headers 正确设置了。我的问题是 $uri$jsonObject.

Invoke-WebRequest -Uri $uri -Headers $headers -Method POST -ContentType application/json -Body $jsonObject 

任何人都可以给我一个 $jsonObject$uri 值的示例吗? $uri 应该像下面这样吗?如果是,什么是 Object.json ,我需要定义它吗?

$uri = "https://api.service.softlayer.com/rest/v3.1/SoftLayer_Dns_Domain_ResourceRecord/deleteObject/Object.json"

尝试按照示例进行操作

 slcli --format=json call-api SoftLayer_Dns_Domain_ResourceRecord deleteObject --id 123456789

123456789 数据应随您的 DNS 域 ID 变化

如需了解更多信息,请查看 link https://softlayer-api-python-client.readthedocs.io/en/latest/cli/call_api/

希望对您有所帮助。

我发现如何: $uri="https://api.softlayer.com/rest/v3/SoftLayer_Dns_Domain/$domainID/getResourceRecords.json"

下面将 return 一个 json 文件,其中包含我们域中的所有记录: 调用-WebRequest -Uri $uri -Headers $headers -Method GET -ContentType application/json

从收到的json文件中,我们可以提取我们要删除的记录的记录ID(下面的$recordID),然后运行: $deleteResoutceURI= "https://api.softlayer.com/rest/v3/SoftLayer_Dns_Domain_ResourceRecord/$recordID/deleteObject.json"

Invoke-WebRequest -Uri $deleteResoutceURI -Headers $headers -Method POST -ContentType application/json