>  기사  >  웹 프론트엔드  >  JS에서 Ajax를 작성하는 방법

JS에서 Ajax를 작성하는 방법

anonymity
anonymity원래의
2019-05-05 16:33:139357검색

JS에서 Ajax를 작성하는 방법

JavaScript에서 ajax를 사용하면 다음과 같은 두 가지 기능이 있습니다.

1. js가 서버의 데이터를 읽도록 합니다. 예를 들어 계정과 비밀번호가 올바른지 확인합니다. etc.

네트워크 요청에는 Get과 Post라는 두 가지 유형이 있다는 것을 알고 있습니다. 두 유형의 차이점은 무엇인가요?

get 방식: 일반적인 양식 제출 방식: url;?name=value&name=value 형식 뒤에 값을 제출합니다.

양식 제출 예:

<form  action="www.baidu.com " method="get" (默认是get方式)>
姓名:<input type="text" name="userName"></br>
密码:<input type="password" name="password">
<input type="submit" value="提交">
</from>

차이:

1. get 방식은 URL을 통한 것입니다. 데이터 전송은 http의 Content를 통해 전송됩니다.

2. get 용량이 작아 대용량 데이터(일반적으로 4k-10k) 전송에는 적합하지 않으며, 일반 서버에서는 전송됩니다.

3. 너무 큰 파일의 경우 post를 사용하지 않고 제어합니다.

4. get 방법은 덜 안전하고 안전한 사람들에게는 post가 더 좋습니다.

5. get 방법 캐시는 있지만 post에는 캐시가 없습니다. 서버에서 데이터를 가져오는 데는 get이 더 적합하고, 서버로 데이터를 전송하는 데에는 post가 더 적합합니다. JS에서 AJAX를 작성하는 두 가지 방법:

GET 방법:

var ajaxObj=new XMLHttpRequest();
ajaxObj.open("GET","../php/ajaxSubmitData.php?data=tody is wind");
ajaxObj.send()
ajaxObj.onreadystatechange= function () {
    if(ajaxObj.readyState===4&&ajaxObj.status){
        alert("发送成功");    
    }
}

POST 방법:

var ajaxObj=new XMLHttpRequest();
ajaxObj.open("POST","../PHP/ajaxSubmitData.php");
ajaxObj.setRequestHeader("Content-type","application/x-www-form-urlencoded");
// multipart/form-data 默认的以二进制方式传送
ajaxObj.send("data=我是post数据");
ajaxObj.onreadystatechange= function ()
if(ajaxObj.readyState===4&&ajaxObj.status===200){
alert("发送数据成功");
}
}

ajax는 서버에서 반환된 데이터를 가져오는 데 사용되며 ajaxObj.responseText는

ajax에서 데이터를 보내는 데 사용됩니다. 서버로: get post

get: url rewriting (splicing) ---- 적은 양의 데이터, 단순 데이터는 안전하지 않음

post:send(data) 요청 본문 (페이지에서 볼 수 없음) 많은 양 데이터, 단순 또는 복잡한 데이터 보안

application/x-www-form-urlencoded는 양식이 기본적으로 문자열 형식으로 전송된다는 것을 의미합니다.

multipart/form- 데이터 양식 데이터가 바이너리 스트림으로 전송됩니다

ajaxObj.setRequestHeader는 실제로 요청 헤더(요청 메시지)의 Content-type 값을 수정합니다

위 내용은 JS에서 Ajax를 작성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.