데이터불러오기기
This commit is contained in:
39
datareq/datareq_latest.js
Normal file
39
datareq/datareq_latest.js
Normal file
@@ -0,0 +1,39 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
const BASE_URL = "http://localhost:9551/api/contents/update";
|
||||
|
||||
function truncateText(text, maxLen = 256) {
|
||||
if (typeof text !== "string") return "";
|
||||
return text.length > maxLen ? text.slice(0, maxLen) : text;
|
||||
}
|
||||
|
||||
async function requestLatest() {
|
||||
const url = `${BASE_URL}?date=latest`;
|
||||
try {
|
||||
const res = await fetch(url, { method: "GET" });
|
||||
const text = await res.text().catch(() => "");
|
||||
if (!res.ok) {
|
||||
const preview = truncateText(text, 256);
|
||||
console.error(`[FAIL] latest | ${url} -> ${res.status} ${res.statusText} ${preview ? `| ${preview}` : ""}`);
|
||||
return { ok: false, status: res.status, body: text };
|
||||
}
|
||||
const preview = truncateText(text, 256);
|
||||
console.log(`[OK] latest | ${url} -> ${preview || res.status}`);
|
||||
return { ok: true, status: res.status, body: text };
|
||||
} catch (err) {
|
||||
const errMsg = err instanceof Error ? err.message : String(err);
|
||||
console.error(`[ERROR] latest | ${url} -> ${truncateText(errMsg, 256)}`);
|
||||
return { ok: false, error: err };
|
||||
}
|
||||
}
|
||||
|
||||
// Node 18+ 환경 가정: fetch 전역 제공. 없으면 종료 안내.
|
||||
if (typeof fetch !== "function") {
|
||||
console.error("현재 Node 런타임에 fetch가 없습니다. Node 18+를 사용하거나 폴리필을 추가하세요.");
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
requestLatest().catch((err) => {
|
||||
console.error("예상치 못한 오류:", err);
|
||||
process.exit(1);
|
||||
});
|
||||
Reference in New Issue
Block a user