
域名 NS 之前在阿里云,解析了泛域名*.domain.com
导入 cf 时,它自动帮我同步了 200+条记录
尝试在阿里云删除*.domain.com,等了十几分钟再导入依然 200+记录
尝试了几次发现没有阻止 cf 自动导入的方式,于是打算手动删除
p>但是 200+条太多,官方也没有批量删除的方式,只好借助 api 了import axios from 'axios' const apiEmail = 'cloudflare login email' const apiKey = 'Global API Key @ https://dash.cloudflare.com/profile/api-tokens' const zOneId= 'zone id of the domain in cloudflare' const api = `https://api.cloudflare.com/client/v4/zones/${zoneId}/dns_records` const headers = {'X-Auth-Email': apiEmail, 'X-Auth-Key': apiKey} axios.request({url: `${api}?per_page=5000`, headers}).then(({data})=>{ // https://api.cloudflare.com/#dns-records-for-a-zone-list-dns-records at List DNS Records let errorOccurs = false for (const dnsRecord of data.result||[]) { axios.request({url: `${api}/${dnsRecord.id}`, method: 'DELETE', headers}).then(({data})=>{ console.log('delete result', data) }).catch(error=>{ console.error(error, error.response?.data) errorOccurs = true }) if (errorOccurs) break } }).catch(error=>{ console.error(error, error.response?.data) }) 1 wdssmq 2022-07-13 14:43:02 +08:00 我之前是用官方的 PHP SDK 封装了个用。。() |
3 tofdoo 2022-07-29 17:26:12 +08:00 CF 的 API 支持二次开发 dns 接口吗?重新封装后让用户可以自己改的需求(也在啃文档...) |