Cloudflare는 질 좋은 DNS, CDN 서비스를 제공하고 있기도 하지만, 잘 구축된 API 또한 제공하여 개발을 할 때 편리하게 DNS 부분을 만들 수 있게 해 준다.
설치
Node.js에서 Cloudflare API를 사용하기 위해선 Cloudflare에서 제공하는 모듈을 설치해야 한다.
npm i cloudflare
Cloudflare API에 로그인하기 위해 ID/PW 방식과 토큰 방식을 이용할 수 있는데, 보안성 면에서 좀 더 안전한 토큰을 추천한다.
토큰 발행은 Dashboard -> My Profile -> API Tokens -> Create Token에서 할 수 있다.
아까 발급받은 토큰을 입력하고 객체를 만들면 Cloudflare API를 이용할 수 있다.
var cf = require("cloudflare")({
token: "발급받은 토큰",
});
사용
Cloudflare API Documentation을 보면 DNSRecord의 수정은 cf.dnsRecords."" 의 꼴로 사용할 수 있다.
즉 만약 add 명령어를 사용하고 싶으면 cf.dnsRecords.add(zone_id, record)의 꼴로 사용하면 된다.
var resp = await cf.dnsRecords.add(zone_id, record);
Zone id는 도메인 대쉬보드에 API - Zone ID에서 확인할 수 있고,
record는 아래와 같이 Object를 만들어서 입력하면 된다.
var record = {
type: "A",
name: "test" + ".자신의 도메인",
content: "목적지 IP",
priority: 10,
proxied: false,
ttl: 1,
};
var record = {
type: "CNAME",
name: "test" + ".자신의 도메인",
content: "목적지 CNAME",
priority: 10,
proxied: false,
ttl: 1,
};
Reference
cloudflare node.js Github : https://github.com/cloudflare/node-cloudflare
cloudflare node.js Documentation : https://cloudflare.github.io/node-cloudflare
cloudflare API v4 Documentation : https://api.cloudflare.com
'옛날 글들 > JS' 카테고리의 다른 글
[NODEJS] Import와 Require 동시에 사용하기 (0) | 2022.01.26 |
---|---|
[NODEJS] 간단한 데이터베이스 Lowdb 사용하기 (0) | 2020.04.20 |