nodejs CORS 문제를 지금 영구적으로 해결하는 방법(2022) 아래 코드와 같이 클라이언트 측 앱에서 Google Maps API와 같은 외부 서버 API에서 일부 데이터를 가져오고 싶다고 가정해 보겠습니다. 신속하게 수정하려면 공용 CORS 프록시 서버 중 하나를 사용하십시오. 이 예제에서는 Heroku CORS 프록시 서버를 사용합니다. Heroku CORS 프록시 URL을 추가한 후에도 403 금지 오류가 발생할 수 있습니다. 클라이언트가 아닌 서... nodejsbeginnersjavascriptwebdev Node.js를 AWS서버에서 사용하는 실습 간단한 예제와 함께 AWS에서 Node.js를사용하는 법을 배워보도록 하겠다. 해당 github에 있는 레포지토리로 사용을 할 것이다. 3000번 포트로 Listen되는 예제이고 간단히 GET, POST, DELETE 기능을 수행할 수 있다. 계정과 Default VPC가 생성되어 있다는 가정하에 진행하는 내용이다. 진행되는 모든 내용은 ap-northeast-2(서울)리전에서 진행된다. I... awsAmazonlinux2nodejsAmazonlinux2 nodeJs 설치 cmd 창에서 nodeJs가 설치되어있는지 확인한다. 버전이 없다고 나올 것이다. 노드Js 사이트에 들어가 다운로드를 받는다. 설치 후 위와 같이 설치된 버전을 확인할 수 있다. 설치 중간 과정들에 대한 설정을 따로해주거나 그냥 엔터를 쳐서 넘겨도 된다. VSC를 통해 확인해보자 잘 설치가 됐으면 package.json 내에 dependencies에서 express 정보가 추가됨 그렇다면 e... nodejsnodejs [서버 성능 개선 스토리 #2] 캐시와 Redis 알아보기 사용자가 많이 늘어나 DB에 무리가 갈 것을 사전에 방지 하고자 캐시를 활용해 서버 성능을 개선 시켜 보려고 한다. 캐시에 데이터를 미리 복사해 놓으면 계산이나 접근 시간 없이 더 빠른 속도로 데이터에 접근할 수 있다. 캐시 서버는 속도를 위해서 주로 메모리를 사용하기 때문에 서버에 장애가 생기면 메모리가 날라가서 데이터가 손실될 수 있다. Redis(Remote Dictionary Serv... nodejsCacheexpressredisCache 콜백과 처리 콜백이란, 말 그대로 나중에 실행되는 코드를 말합니다. 일반적인 화살표 함수에서, {} 부분이 콜백에 해당된다고 볼 수 있습니다. 이벤트 중심 언어인 자바스크립트는 다음과 같이 여러 함수를 입력했을 때, 결과를 기다리지 않고 다음 이벤트를 계속 실행합니다.(비동기적 특성) 그럴 때는 비동기적으로 처리됩니다. 콜백 함수 그래서, 하단의 코드를 입력했을 때 delay 시간이 더 짧은 second... nodejsJavaScript동기callback비동기JavaScript [MYSQL] 웹 앱 제작하기 - 글 목록 그렇다면 이제 이를 통해 간단한 웹 어플리케이션을 만들어보자. 생활코딩 egoing 님의 [nodejs 강좌] Node.js 를 이용해 웹애플리케이션 만들기 시리즈 강의를 통해 웹 앱 애플리케이션을 직접 제작할 수 있다. (인프런 혹은 을 참조) 우리는 이를 기반으로 웹 앱을 만들 것이다. 위와 같이 각 항목을 클릭하면 클릭한 항목에 대한 설명이 뜨고, new를 누르게 되면 리스트에 새로운 ... mysqlnodejsDatabaseDatabase [Node.js] Error: No default engine was specified and no extension was provided. Error: No default engine was specified and no extension was provided. 기본 탬플릿 엔진이 지정되지 않았고, 경로가 지정되있지 않을 때 뜨는 오류이다. app.js에 기본엔진과 그 경로를 지정해주면 된다. 이렇게 path import 후 하단에 본인이 ejs를 쓰지 않거나, views폴더에 탬플릿을 모아두지 않았다면, 상황에 맞춰 수정하면... errornodejserror [MYSQL] 웹 앱 제작하기 - 추가 app_mysql.js 에서 항목을 추가하는 부분은 app.get('/topic/new', function(req, res){...} 를 살펴보면 된다. app_mysql.js 조금 더 직관화하기위해 new보다는 add로 하는게 나을 것 같다. new로 설정한 부분을 모두 add로 바꾸자. (views_mysql 폴더의 new.pug 파일도 add.pug 로 바꿔야한다.) 위의 코드는 fs.... mysqlnodejsDatabaseDatabase [MYSQL] 웹 앱 제작하기 - 글 상세보기 Nodejs와 MySql을 통해 간단한 웹 앱을 제작하는 과정 중에 있다. 지난 포스팅에서 DB에 담긴 id값에 해당하는 글 목록을 띄워보았고, id값이 없을 때 즉, 메인 화면에서 환영 문구도 삽입해보았다. 그러나 아직 동적으로 리스트 아이템을 클릭했을 때, 그에 따른 상세 내용이 출력되는 기능은 구현하지 않았다. 따라서 오늘은 이에 대한 것을 구현할 예정이다. app_mysql.js 에서... mysqlnodejsDatabaseDatabase Node.js로 MySQL 다루기 app.js sequelize.sync(...) : 시퀄라이즈를 통해 mySQL과 연결해주는 부분입니다. app.use(...) : 미들웨어를 이용해서 config에 지정되어있는 데이터베이스 이름(실제 mysql에서 선언한 이름과 다릅니다)과 같은지 비교하는 부분입니다. "username" : 데이터베이스 구조를 root에 만들어서 "root"로 적었습니다. "database" : 이 부분은... mysqlnodejsmysql day08 여러 사람이 공유하여 사용할 목적으로 체계화해 통합, 관리하는 데이터의 집합이다. 연결된 애플리케이션과 함께 데이터와 DBMS를 하나로 묵어 데이터베이스 시스템이라고 한다. 둘은 우선 용어부터 다르다. 데이터베이스를 저장할 데이터를 작성 방식으로 구분하는데 관계형은 관계를 중시하며 데이터의 중복을 피하기 위해 여러 테이블로 나누어 저장한다. 문서형은 이와 반대로 다른 구조의 데이터를 같은 컬... expressnodejsBackendBackend
CORS 문제를 지금 영구적으로 해결하는 방법(2022) 아래 코드와 같이 클라이언트 측 앱에서 Google Maps API와 같은 외부 서버 API에서 일부 데이터를 가져오고 싶다고 가정해 보겠습니다. 신속하게 수정하려면 공용 CORS 프록시 서버 중 하나를 사용하십시오. 이 예제에서는 Heroku CORS 프록시 서버를 사용합니다. Heroku CORS 프록시 URL을 추가한 후에도 403 금지 오류가 발생할 수 있습니다. 클라이언트가 아닌 서... nodejsbeginnersjavascriptwebdev Node.js를 AWS서버에서 사용하는 실습 간단한 예제와 함께 AWS에서 Node.js를사용하는 법을 배워보도록 하겠다. 해당 github에 있는 레포지토리로 사용을 할 것이다. 3000번 포트로 Listen되는 예제이고 간단히 GET, POST, DELETE 기능을 수행할 수 있다. 계정과 Default VPC가 생성되어 있다는 가정하에 진행하는 내용이다. 진행되는 모든 내용은 ap-northeast-2(서울)리전에서 진행된다. I... awsAmazonlinux2nodejsAmazonlinux2 nodeJs 설치 cmd 창에서 nodeJs가 설치되어있는지 확인한다. 버전이 없다고 나올 것이다. 노드Js 사이트에 들어가 다운로드를 받는다. 설치 후 위와 같이 설치된 버전을 확인할 수 있다. 설치 중간 과정들에 대한 설정을 따로해주거나 그냥 엔터를 쳐서 넘겨도 된다. VSC를 통해 확인해보자 잘 설치가 됐으면 package.json 내에 dependencies에서 express 정보가 추가됨 그렇다면 e... nodejsnodejs [서버 성능 개선 스토리 #2] 캐시와 Redis 알아보기 사용자가 많이 늘어나 DB에 무리가 갈 것을 사전에 방지 하고자 캐시를 활용해 서버 성능을 개선 시켜 보려고 한다. 캐시에 데이터를 미리 복사해 놓으면 계산이나 접근 시간 없이 더 빠른 속도로 데이터에 접근할 수 있다. 캐시 서버는 속도를 위해서 주로 메모리를 사용하기 때문에 서버에 장애가 생기면 메모리가 날라가서 데이터가 손실될 수 있다. Redis(Remote Dictionary Serv... nodejsCacheexpressredisCache 콜백과 처리 콜백이란, 말 그대로 나중에 실행되는 코드를 말합니다. 일반적인 화살표 함수에서, {} 부분이 콜백에 해당된다고 볼 수 있습니다. 이벤트 중심 언어인 자바스크립트는 다음과 같이 여러 함수를 입력했을 때, 결과를 기다리지 않고 다음 이벤트를 계속 실행합니다.(비동기적 특성) 그럴 때는 비동기적으로 처리됩니다. 콜백 함수 그래서, 하단의 코드를 입력했을 때 delay 시간이 더 짧은 second... nodejsJavaScript동기callback비동기JavaScript [MYSQL] 웹 앱 제작하기 - 글 목록 그렇다면 이제 이를 통해 간단한 웹 어플리케이션을 만들어보자. 생활코딩 egoing 님의 [nodejs 강좌] Node.js 를 이용해 웹애플리케이션 만들기 시리즈 강의를 통해 웹 앱 애플리케이션을 직접 제작할 수 있다. (인프런 혹은 을 참조) 우리는 이를 기반으로 웹 앱을 만들 것이다. 위와 같이 각 항목을 클릭하면 클릭한 항목에 대한 설명이 뜨고, new를 누르게 되면 리스트에 새로운 ... mysqlnodejsDatabaseDatabase [Node.js] Error: No default engine was specified and no extension was provided. Error: No default engine was specified and no extension was provided. 기본 탬플릿 엔진이 지정되지 않았고, 경로가 지정되있지 않을 때 뜨는 오류이다. app.js에 기본엔진과 그 경로를 지정해주면 된다. 이렇게 path import 후 하단에 본인이 ejs를 쓰지 않거나, views폴더에 탬플릿을 모아두지 않았다면, 상황에 맞춰 수정하면... errornodejserror [MYSQL] 웹 앱 제작하기 - 추가 app_mysql.js 에서 항목을 추가하는 부분은 app.get('/topic/new', function(req, res){...} 를 살펴보면 된다. app_mysql.js 조금 더 직관화하기위해 new보다는 add로 하는게 나을 것 같다. new로 설정한 부분을 모두 add로 바꾸자. (views_mysql 폴더의 new.pug 파일도 add.pug 로 바꿔야한다.) 위의 코드는 fs.... mysqlnodejsDatabaseDatabase [MYSQL] 웹 앱 제작하기 - 글 상세보기 Nodejs와 MySql을 통해 간단한 웹 앱을 제작하는 과정 중에 있다. 지난 포스팅에서 DB에 담긴 id값에 해당하는 글 목록을 띄워보았고, id값이 없을 때 즉, 메인 화면에서 환영 문구도 삽입해보았다. 그러나 아직 동적으로 리스트 아이템을 클릭했을 때, 그에 따른 상세 내용이 출력되는 기능은 구현하지 않았다. 따라서 오늘은 이에 대한 것을 구현할 예정이다. app_mysql.js 에서... mysqlnodejsDatabaseDatabase Node.js로 MySQL 다루기 app.js sequelize.sync(...) : 시퀄라이즈를 통해 mySQL과 연결해주는 부분입니다. app.use(...) : 미들웨어를 이용해서 config에 지정되어있는 데이터베이스 이름(실제 mysql에서 선언한 이름과 다릅니다)과 같은지 비교하는 부분입니다. "username" : 데이터베이스 구조를 root에 만들어서 "root"로 적었습니다. "database" : 이 부분은... mysqlnodejsmysql day08 여러 사람이 공유하여 사용할 목적으로 체계화해 통합, 관리하는 데이터의 집합이다. 연결된 애플리케이션과 함께 데이터와 DBMS를 하나로 묵어 데이터베이스 시스템이라고 한다. 둘은 우선 용어부터 다르다. 데이터베이스를 저장할 데이터를 작성 방식으로 구분하는데 관계형은 관계를 중시하며 데이터의 중복을 피하기 위해 여러 테이블로 나누어 저장한다. 문서형은 이와 반대로 다른 구조의 데이터를 같은 컬... expressnodejsBackendBackend