각각의 API 요청에 필요한 값들을 선언해 둡니다.
SSO_GITHUB_CLIENT_ID=11ca1ffa586c7cea9663
SSO_GITHUB_CLIENT_SECRET=f5a6c3138294d1c334745e89187450ff8703f8d4
해당하는 API 토큰의 사용방식에 맞게 Axios 인스턴스를 생성합니다.
const GithubAPI = (function(){
const client_id = process.env.SSO_GITHUB_CLIENT_ID;
const client_secret = process.env.SSO_GITHUB_CLIENT_SECRET;
const axios = axios.create({
baseURL: 'https://api.github.com/',
})
let token = "";
return {
setAccessToken: function(access_token){
token = access_token;
},
get: function(url, params){
return axios.get(url, {
header: { "Authorization": `token ${token}` },
params
})
},
post: function(url, data){
return axios.post(url, data, {
header: { "Authorization": `token ${token}` }
})
},
put: function(url, data){
return axios.put(url, data, {
header: { "Authorization": `token ${token}` }
})
},
delete: function(url, data){
return axios.delete(url, data, {
header: { "Authorization": `token ${token}` }
})
}
}
})();
위에서 생성한 인스턴스는 아래와 같이 사용하실 수 있습니다.
GithubAPI.setAccessToken("aaa");
app.("/myInfo", (req, res) => {
GithubAPI
.get("/users/as-you-say")
.then(ghRes => res.status(200).send(ghRes.json()))
})
[Node/Tutorial] 애플리케이션 생성하기 (0) | 2020.11.09 |
---|---|
[Node/Tutorial] Node JS란? (0) | 2020.11.09 |
[Node - Tutorial] 구글 계정으로 로그인하기 - (2) - 구글 OAuth 클라이언트 ID 생성하기 (0) | 2020.01.15 |
[Node - Tutorial] 구글 계정으로 로그인하기 - (1) - 프로젝트 만들기 (0) | 2020.01.15 |
[Setting] Node JS 설치하기 (0) | 2020.01.15 |