Node.js 통합
SMSBAT API를 Node.js 애플리케이션에 통합하는 것은 기본 fetch API(Node.js 18+) 또는 널리 사용되는 axios 라이브러리를 사용하여 수행할 수 있습니다.
Axios 사용(권장)
먼저 npm 또는 Yarn을 통해 Axios를 설치합니다.
그런 다음 다음 코드를 사용하여 메시지를 보냅니다.
const axios = require('axios');
async function sendMessage() {
const url = 'https://api.smsbat.com/bat/messagelist';
const apiKey = 'YOUR_API_KEY_HERE';
const payload = {
messages: [
{
from: 'ALPHANAME',
to: '380501234567',
text: 'Hello from Node.js and Axios!',
type: 'sms'
}
]
};
try {
const response = await axios.post(url, payload, {
headers: {
'Content-Type': 'application/json',
'X-Authorization-Key': apiKey
},
timeout: 10000
});
console.log(`Status Code: ${response.status}`);
console.log('Response:', response.data);
} catch (error) {
console.error('An error occurred:', error.message);
if (error.response) {
console.error('Error Details:', error.response.data);
}
}
}
sendMessage();
네이티브 가져오기 사용(Node.js 18+)
Node.js 18 이상을 사용하는 경우 내장된 전역 fetch API를 사용할 수 있습니다.
async function sendMessageWithFetch() {
const url = 'https://api.smsbat.com/bat/messagelist';
const apiKey = 'YOUR_API_KEY_HERE';
const payload = {
messages: [
{
from: 'ALPHANAME',
to: '380501234567',
text: 'Hello from Node.js Native Fetch!',
type: 'sms'
}
]
};
try {
const response = await fetch(url, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-Authorization-Key': apiKey
},
body: JSON.stringify(payload)
});
const data = await response.json();
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}, details: ${JSON.stringify(data)}`);
}
console.log(`Status Code: ${response.status}`);
console.log('Response:', data);
} catch (error) {
console.error('An error occurred:', error.message);
}
}
sendMessageWithFetch();