일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 부트스트랩
- 월간코드챌린지시즌2
- AJAX
- 스킬체크
- SimpleDateFormat
- 백준
- php
- androidstudio
- 연습문제
- 나머지가1
- Fullcalendar
- bootstrapModal
- REACT
- Android
- level1
- modal
- 모달
- bootstrap
- java
- 안드로이드
- Programmers
- 코딩테스트
- 스킬체크테스트
- MSSQL
- 프로그래머스
- Node
- 동적웹페이지
- Summer/WinterCoding
- 월간코드챌린지시즌3
- 코딩테스트연습
- Today
- Total
개발하는 고양이 오이
6. [React] Node.js - MSSQL연동 + Setting the TLS ServerName to an IP address is not permitted by RFC 6066 오류 해결 본문
6. [React] Node.js - MSSQL연동 + Setting the TLS ServerName to an IP address is not permitted by RFC 6066 오류 해결
Cucum 2022. 10. 17. 10:18안녕하세요. 구글링을 하다보면, React에서 Node.js를 이용하여 Mysql연동은 많이 봤으나, Mssql연동 방법에 대해서는 많지 않아서 공유하고자 올립니다.
우선, React는 클라이언트 사이드로, Mssql와 연동하려면 Node.js를 이용하여 서버 사이드로 연동을 해야합니다.
① mssql 라이브러리 설치
npm install mssql
② Node.js 서버 생성
생성한 리액트 애플리케이션에 server 폴더를 생성하고, 내부에 server.js파일을 생성합니다.
③ server.js
const express = require('express');
const app = express();
app.listen(8081, function () {
console.log('listening on 8081')
});
// mssql 연동 -> 실제 본인의 mssql 값 작성해주면 됩니다.
var mssql = require("mssql");
var dbConfig_user = {
server: "xxx.xxx.x.xx",
database: "xxx",
user: "xx",
password: "xx",
port: 00
};
mssql.connect(dbConfig_user, function(err){
if(err){
return console.error('error : ', err);
}
console.log('MSSQL 연결 완료')
});
※ server.js 코드 설명 ( app.listen() )
app.listen() : 원하는 포트에 서버를 오픈하는 문법
.listen(서버를 오픈할 포트번호, function() {
//서버 오픈 시 실행할 코드
})
= 'listen() 이라는 함수를 동작시킨 후에 function() { } 내에 있는 코드를 실행해주세요' 라는 의미
④ 실행
Terminal 창에 다음과 같이 입력
node server/server.js
★ 오류
DeprecationWarning: Setting the TLS ServerName to an IP address is not permitted by RFC 6066. This will be ignored in a future version.
해당 오류가 발생했다면, mssql을 연동해주는 부분에 다음과 같이 코드를 추가해줍니다.
// mssql 연동
var mssql = require("mssql");
var dbConfig_user = {
server: "xxx.xxx.x.xx",
database: "xxx",
user: "xx",
password: "xx",
port: 00,
options: { // Setting the TLS ServerName to an IP address is not permitted by RFC 6066. 오류 해결
encrypt: false,
trustServerCertificate: true,
}
};
(참고)
⑤ 재실행
(Ctrl+C 를 클릭하면 실행하던 서버가 정지됩니다.)
후에 다시 Terminal 창에 다음과 같이 입력합니다.
node server/server.js
다음과 같이 콘솔 창에 'MSSQL 연결 완료' 문구까지 뜨는 것을 확인했습니다.
⑥ url에 localhost:8081 입력
이때, 8081은 server.js 파일에서 app.listen 내부에 작성한 포트 번호입니다.
Cannot GET / 라는 문구가 표시된다면 서버가 잘 살아있는 것입니다.
만약, 서버가 죽어있다면 아래 이미지처럼 표시 될 것입니다.
감사합니다.
'React' 카테고리의 다른 글
4. [React] BootStrap Modal 이용 (Button 클릭 시 Modal) (0) | 2022.09.22 |
---|---|
3. [React] BootStrap Button 이용 (0) | 2022.09.21 |
1. [React] [오류] 'npx' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. (0) | 2022.06.22 |