게시판 본문 ASP, ASP.NET, IIS & Script - Read Only

re: 디비 연결 설정
작성자: 송원석
작성일시: 2005-09-23 08:36,  조회수: 5,830
안녕하세요? 송원석입니다. ^_^

물론 가장 안전한 방법은 연결 문자열 자체를 넘겨주지 않는 방법입니다. 다만 전후 사정을 감안하여 볼 때 IFRAME 은 반드시 사용한다고 가정을 하도록 하겠습니다. 다음과 같이 해보시기 바랍니다.
1. 페이지 A 를 준비하십시요. 이 페이지는 상대방에게 넘겨줄 페이지입니다.
2. 페이지 B 를 준비하십시요. 이 페이지는 자신의 서버에 위치할 페이지입니다.
3. 페이지 A 는 일반적인 회원정보를 입력하는 페이지입니다. 물론 IFRMAE 안에 출력될 것입니다.
4. 페이지 A 에서 사용자가 데이터를 입력하고 저장 버튼을 누릅니다.
5. 페이지 A 는 입력받은 데이터를 정리하거나 걸러내는 등의 처리를 합니다. 
6. 그러나 페이지 A 는 데이터베이스에 데이터를 직접 입력하지 않고 페이지 B 로 전송합니다.
7. 전송방법으로는 MSXML2.XMLHTTP 컴포넌트를 사용합니다.
8. 페이지 B 는 평소와 같이 Request 개체로 데이터들을 받습니다.
9. 페이지 B 는 데이터베이스에 데이터를 입력합니다.
이런 방법을 사용하시면 연결 문자열을 넘겨줄 필요가 없겠죠. 일종의 기초적인 웹 서비스라고 보실 수도 있겠네요. 물론 이 과정중에 데이터를 암호화 하는 등의 추가적인 보안 설정을 하실 수도 있습니다. 이제 필요한 것은 말씀드린 컴포넌트를 어떻게 사용하는지 그 방법만 아시면 됩니다. 이 부분은 다른 분의 글을 인용하도록 하겠습니다. 다음은 주로 마이크로소프트 뉴스 그룹에서 활동하시는 HAN 님의 글을 옮긴 것입니다. 제 게시판의 특성 문제로 편의상 제가 약간의 첨삭을 가했습니다.
안녕하세요. 좋은 한 주 되십시오.

요즘 XMLHTTP 를 궁금해하시는 분들이 많은 듯해서...
XMLHTTP 는 원격파일을 부르는 방법입니다. 
물론 로컬 웹 서버에 있는 파일도 가능하고 같은 도메인 내에서라면 
클라이언트 영역에서도 사용 가능합니다. 
이렇게 개체를 참조합니다.

Set xh = CreateObject("MSXML2.XMLHTTP")

GET/POST 둘 다 사용가능합니다.

xh.open "get", "url", false
xh.open "post", "url", false

url 은 비록 로컬서버라 해도 반드시 http 로 시작합니다. 
이렇게 연결을 연 다음에는 보냅니다.

xh.send something

마지막 something 은 생략될수도 있습니다. 
예를 들어 GET 방식에서는 보낼게 없을겁니다. 
그러므로 그냥,

xh.send

무언가를 보냈으면 받는게 있을 수도 있습니다. 
받는건 스트링, 바이너리, XML 등이 있습니다. 
그러므로 호출자측 코드는 마지막으로 이렇게 끝납니다.

response.write xh.responseText 'or
response.binarywrite xh.responsebody 'or
response.write xh.responseXML.XML

한편 피호출자 (url의 주소페이지) 는 XMLHTTP 가 보내는걸 이렇게 받습니다.

response.write request.querystring(1)
response.write request.form(1)
response.binaryWrite request
XMLdoc.load request

각각 get, post, binary, XML 을 보냈을 경우입니다. 
한편 두 번째 POST 방식은 그동안 설명만으론 안됩니다. 
사실은 보낼때, open 과 send 사이에 다음 행을 집어넣습니다.

xh.setRequestHeader "Content-Type","application/x-www-form-urlencoded"

담에 보낼때,

xh.send "f1=1&f2=2"

이런식으로 쿼리스트링을 나누는것처럼 폼 변수를 나누어 보냅니다. 
받는 측에선 request.form(1), request.form(2), 이런식으로 나누어 받을겁니다.

한편 GET 방식은 오픈할때 그냥 url에 쿼리문자열을 넣어서 보냅니다.

xh.open "get", "http:// url/page.asp?a=1&b=2", false

그리고 send 는 그냥,

xh.send

한글 페이지를 불러올때는 바이너리로 열어야 글자가 안깨집니다.

xh.open "get", "http:// 한글페이지주소/page.asp", false
xh.send
response.binaryWrite xh.responseBody

이외에 XMLHTTP 는 바이너리나 XML DOM 개체를 보내는데도 편리하게 사용할 수 있습니다.
XMLHTTP 는 윈도우의 wininet.dll 이라는 개체를 사용합니다. 
단점은 멀티스레드가 안된다는 겁니다. 
그러므로 요즘은 serverXMLHTTP 가 권장됩니다. 
사용법은 같습니다. 
그냥 시작할때,

Set xh = CreateObject("MSXML2.ServerXMLHTTP ")

Server 만 앞에 붙이면 됩니다. 
한편 최신 XML 버전을 깔아두고, 버전까지 명시해서 사용하는 것이 좋습니다.

Set xh = CreateObject("MSXML2.XMLHTTP.4.0")
Set xh = CreateObject("MSXML2.ServerXMLHTTP.4.0")

이상 초간단 XMLHTTP 설명이었습니다. 
혹시 안되시는 부분, 추가응용이 있으시다면, 질문을 올려주십시오.
이와 관련하여 추가적인 궁금증이 있으시면 마이크로소프트 코리아 뉴스 그룹에 문의를 해보시면 실력이 뛰어난 여러분들께서 친절하게 답변을 주실 것입니다.

감사합니다.
IP 주소: 165.141.132.200
전체 2,095 건의 게시물, 84 페이지로 구성된 ASP, ASP.NET, IIS & Script 게시판의 1 페이지입니다.
게시물
2,208

win2008 iis에 관한 문의가 좀 있습니다.

이재성

2011-05-25 11,793
2,207

re: win2008 iis에 관한 문의가 좀 있습니다.

송원석

2011-05-27 5,543
2,206

전체선택관련

이석환

2011-05-20 124
2,205

re: 전체선택관련

송원석

2011-05-23 5,388
2,204

엑셀파일명 깨짐에 대해

이석환

2011-05-17 130
2,203

re: 엑셀파일명 깨짐에 대해

송원석

2011-05-17 5,197
2,202

동영상 탑재 사이트 구축 [1]

정보문

2011-05-12 5,067
2,201

re: 동영상 탑재 사이트 구축 [1]

송원석

2011-05-12 5,006
2,200

동시접속자가 많을 경우 XMLDOM 검색 처리 방법 문의

Tanhi

2011-04-24 5,319
2,199

re: 동시접속자가 많을 경우 XMLDOM 검색 처리 방법 문의

송원석

2011-04-25 4,910
2,197

framest 질문이요..

김종식

2011-03-30 228
2,196

re: framest 질문이요..

송원석

2011-03-31 5,012
2,195

자바스크립으로 된 장바구니 기능..

gosuzzang

2011-03-23 290
2,194

re: 자바스크립으로 된 장바구니 기능..

송원석

2011-03-24 5,446
2,193

Server.GetLastError 관련

이석환

2011-03-23 253
2,192

re: Server.GetLastError 관련 [2]

송원석

2011-03-24 5,367
2,191

파일 다운로드시

이석환

2011-03-18 345
2,190

re: 파일 다운로드시

송원석

2011-03-19 5,710
2,189

re: 파일 다운로드시

송원석

2011-03-21 5,020
2,188

re: 파일 다운로드시

이석환

2011-03-21 258
2,187

re: 파일 다운로드시

송원석

2011-03-21 5,462
2,186

iis 요청 필터링관련

질문

2011-03-18 311
2,185

re: iis 요청 필터링관련

송원석

2011-03-18 7,400
2,184

오류메시지 깨짐현상

이석환

2011-03-11 345
2,183

re: 오류메시지 깨짐현상

송원석

2011-03-14 8,436