DocumentDB Connect in Local PC ( MAC OS )
·
Javascript/Node.js
PROBLEM Local에서 MongoDB를 사용하다 AWS DocumentDB 도입 AWS DocumentDB는 같은 VPC내에서만 접근 가능(private) 같은 VPC 내의 EC2에서 터널링을 사용하여 접근 가능 Application에서 접속하는 방법이 필요 PREPARATION 실행 전 Local MongoDB를 종료해야함 brew services stop mongodb-community DocumentDB와 Tunneling이 되어있는 EC2가 존재해야함 AWS 보안 설정을 해야함(inbound/outbound) SOLUTION 1.EC2 Tunneling ssh -i "EC2ConnectKey" -L :: @ -N Option -L : Local Port Forwarding -N : Do no..
NPM node-schedule
·
Javascript/Node.js
ERROR TypeError: this.job.execute is not a function ~ CODE const schedule = require('node-schedule') schedule.scheduleJob('*/1 * * * *', test(1)) const test = async (val) => { console.log(val) } SOLUTION const schedule = require('node-schedule') schedule.scheduleJob('*/1 * * * *', function(){ test(1) }) const test = async (val) => { console.log(val) } REFERENCE ht..
Closure 란
·
Javascript/Study
Javascript Closure 클로저(Closure) ? 변수의 Scope를 확장해주는 기능이다 예를 들어, 지역변수는 함수가 실행될 때 생성되고, 종료 될때 사라진다. 예시 여기서 `test` 는 console.log에 정확하게 출력이 된다. function closer_study1(){ var test = "클로저 테스트" console.log(test) } closer_study1() 하지만, function closure_study1() { var test = "클로저 테스트" } closure_study1() console.log(test) 다음의 코드에서는 test 가 정의되어 있지 않은 오류가 발생하게 된다. 그 이유는 test 라는 변수는 closure_study1() 함수 속에서 선언..
# 공공 API를 통해 카카오 지도에 선별진료소 표기하기 - (3)
·
Javascript/Node.js
지난번에 크롤링해서 데이터 읽어오는 부분까지 구현이 완료되었다. 이제 제일 핵심 기능인 카카오 Local API를 사용하여 병원의 이름을 위도, 경도로 표기하는 일이 남았다. 카카오 API를 사용하기 위해서는 우선 Kakao Developers에 가입해서 인증키를 발급받아야한다. 로그인을 한뒤 애플리케이션 추가하기를 선택하고 앱 이름, 아이콘등을 선택하여 저장한다. 저장한 다음 추가한 애플리케이션을 선택하게 되면 다음과 같이 4가지의 키가 생성되어 있음을 확인할 수 있다. 이 4가지중 우리는 API 를 사용하기에 REST API키를 복사하여 사용한다. API key를 가지고 바로바로 개발에 들어가는 고수들도 있지만, 나는 그렇지 않기에 기본 코드를 복사해서 사용한다. 상단에 메뉴에서 문서 -> 아래로 스..
공공 API를 통해 카카오 지도에 선별진료소 표기하기 - (2)
·
Javascript/Node.js
지난번에 작성했던 코드로는 계속된 오류가 발생했다. 혹시나 API key 가 더이상 동작을 안하는 가 해서 새로 발급을 받고, ec2를 재부팅 했으나 오류는 계속 진행되었다. 여러번 새로고침을 하면 가끔씩 데이터가 나오긴 했지만, 가끔씩이였었다. 그래서 자꾸 읽어오지 못하는 오류가 발생함... (개짜증) 결국 다른 방법을 사용해야 했다. 선별진료소 목록의 신뢰성을 높이기위해 보건복지부 홈페이지의 선별진료소 리스트를 긁어오기로 했다. 사용한 모듈은 axios와 cheerio 를 새롭게 사용했다. npm install axios cheerio 우선 모듈을 다운로드 받아주었다. var axios = require('axios'); var cheerio = require('cheerio&#..
공공 API를 통해 카카오 지도에 선별진료소 표기하기 - (1)
·
Javascript/Node.js
소마 프로젝트를 진행하며 기능중 가까운 선별진료소를 나타내주는 기능을 구현해야 했다. 선별진료소 목록은 공공데이터포털에서 제공해주는 API를 사용할 예정이다. 현재 공공데이터포털에서 제공하는 데이터 형식은 XML형식이기에 가공하기 편하게 JSON으로 바꿔주는 작업이 필요하다. npm install xml2js 우선 xml2js 패키지를 다운받아준다. var xml2js = require('xml2js'); var parser = new xml2js.Parser(); 공공데이터포털에서 데이터를 받아오는 형태를 활용하여 정보를 받아온다. 자료의 형식은 이러하다. 00 NORMAL SERVICE. 20200104 강남구 서울 99 02-3423-7200 강남구보건소 1 1 652 parser.p..