Firebase Cloud Message
Firebase Cloud Message 이하 FCM은 메시지를 간단하게 보낼 수 있는 크로스 플랫폼 메시징 솔루션이다. 해당 내용은 아래 소개한 글에 자세히 설명되어있다.
구현과정
- Firebase console에서 서버키를 발급받기
- firebase 셋업
- 메시지 전송 요청
1. Firebase console에서 서버키를 발급받기
생성한 프로젝트 콘솔의 우측 상단의 설정 버튼의 프로젝트 설정으로 들어간 뒤, 메뉴에서 서비스 계정을 클릭한다.
그리고 아래에 보면 새 비공키 생성 버튼을 클릭하면 키 관련 json 파일이 다운로드된다. 이를 프로젝트 폴더 어딘가에 추가한다.
2. 프로젝트에 firebase 셋업
먼저 npm install로 firebase를 설치해준다.
npm install firebase-admin --save
그다음 모듈을 초기화한다.
//admin.js
const admin = require("firebase-admin");
const serviceAccount = require("비공개 키 경로");
module.exports = admin.initializeApp({
credential: admin.credential.cert(serviceAccount)});
3. 메시지 전송
굉장히 간단하게 서버로 GET, http://localhost:3000/location 요청이 오면 특정 디바이스에 정보를 보내도록 설정하였다.
const admin = require('../fcm/admin.js')
router.get('/location', (req, res) => {
const registrationToken = '디바이스 토큰 값'
const message = {
data: {
score: '850',
time: '2:45'
},
token: registrationToken
};
admin.messaging().send(message)
.then((response) => {
// Response is a message ID string.
console.log('Successfully sent message:', response);
res.send(response);
})
.catch((error) => {
console.log('Error sending message:', error);
res.send(error);
});
});
'백엔드' 카테고리의 다른 글
[공유기 설정] 외부 IP에서 서버로 접속 가능하게 설정하기 (0) | 2020.10.02 |
---|---|
[Node.js] nodemailer로 이메일 인증 구현하기 (0) | 2020.09.07 |
[Node.js] 6. 서버와 MongoDB 연결하기 (0) | 2020.08.31 |
[Node.js] 5. 외부에서의 서버 접속 허용하기. (0) | 2020.08.30 |
[Node.js] 4. Express 라우터 (0) | 2020.08.28 |