xmlhttprequest 객체의 열린 메소드의 첫 번째 매개 변수는 요청 유형이며 값을 얻거나 게시 할 수 있습니다. 이 기사는 GET 요청을 소개합니다.
GET 요청의 목적은 주로 데이터를 얻는 것입니다. GET 요청은 데이터를 전달할 수 있지만 데이터를 전달하는 목적은 서버에게 어떤 컨텐츠를 제공할지 알려주는 것입니다.
GET 요청을 사용하면 매개 변수가 URL과 함께 전달됩니다.
GET 요청을 사용하면 쉽게 캐시되므로 캐싱 문제에주의를 기울여야합니다.
GET Request를 사용하는 경우 서버 측은 Request.QueryString [Data]을 사용하여 데이터를 가져와야합니다.
"완료 Ajax 인스턴스"기사에서 GET 요청을 사용했습니다. 당시 우리는 다음과 같은 문제를 겪었습니다.
- 대부분의 브라우저에서 실행할 수있는 xmlhttprequest 객체를 만드는 방법.
- GET 요청을 사용할 때 캐싱 문제가 있습니다
- 중국인 문제
그중 첫 번째 문제는 "xmlhttprequest 객체"기사에서 해결되었습니다.
두 번째 문제의 경우 이유는 다음과 같습니다.
GET 요청은 매번 일치하는 URL이 있는지 확인하기 위해 매번 캐시에 액세스합니다. 있으면 캐시의 URL이 반환됩니다. 없으면 서버에 대한 요청이 이루어집니다.
해결책:
1. URL에 동적 변경 매개 변수를 추가하여 다른 URL에 액세스 할 때마다 새 요청이 매번 서버에 발행되도록합니다.
세 번째 질문의 경우 먼저 Barlled 코드의 이유를 살펴 보겠습니다.
XMLHTTP가 반환 한 데이터는 기본적으로 UFT-8입니다. 클라이언트 페이지가 GB2312 또는 기타 인코딩 인 경우, 차량 코드가 발생합니다.
해결책:
1. 클라이언트가 GB2312 인 경우 출력이 있으면 출력 스트림 인코딩을 지정하십시오.
2. 클라이언트와 서버는 UTF-8 인코딩을 사용합니다.
3. EncodeUricomponent 메소드를 사용하여 매개 변수를 인코딩하십시오.
예에주의를 기울이십시오.
페이지 HTML 파일이 변경되지 않았습니다. 변경 JS 코드에 대한 지식은 다음과 같습니다.
<script type = "text/javaScript"> 함수 btn_click () {// xmlhttprequest 개체 생성 var xmlhttp = wind // 값을 가져옵니다 var username = document.getElementById ( "txt_username"). 값; var age = document.getElementById ( "txt_age"). 값; // XMLHTTPREQUEST 객체를 구성 // ucomponent 메소드를 사용하여 획득 한 매개 변수를 인코딩하기 위해 ucomponent 메소드를 사용하여 얻은 매개 변수를 인코딩합니다. // 캐시 문제를 피하기 위해 매번 다른 URL에 액세스하기 위해 매개 변수 추가 xmlhttp.open ( "get", "get.aspx? username =" + allodeUricomponent (userEname) + " + agen +" + " +" + " +" + Age = " Math.random ()); // 콜백 함수 xmlhttp.onreadyStateChange = function () {if (xmlhttp.readystate == 4 && xmlhttp.status == 200) {document.getElementById ( "result"). }} // 매개 변수가 모두 URL에 있으므로 요청을 보내므로 NULL은 XMLHTTP.SEND (NULL); } </스크립트>
서버 측 :
보호 된 void page_load (Object Sender, EventArgs e) {response.clear (); 문자열 username = request.queryString [ "username"]; 문자열 age = request.querystring [ "age"]; response.write ( "이름 : ' + username +"'<br/> age : " + age +"<br/> time : ' + dateTime.now.toString () + "'"); response.end ();}// http://www.vevb.com/oneword/archive/2011/06/04/2072585.html의 소스