[jQuery] 제이쿼리 비동기 방식 연동 - Ajax (작성 중)

선영·2022년 9월 19일

jQuery

목록 보기
4/4
post-thumbnail

Ajax란?

Ajax(Asynchronous JavaScript and XML) 란, 비동기 방식JavascriptXML 을 가리킴. 동기 방식 은 서버에 신호를 보냈을 때 응답이 돌아와야 다음 동작을 수행할 수 있고, 비동기 방식 은 그와 반대로 신호를 보냈을 때 응답상태와 상관없이 다음 동작을 수행할 수 있다는 점이 다른 점임.

Ajax 를 이용하는 이유는 화면 전환 없이 클라이언트(사용자 컴퓨터)와 서버(서비스를 제공하는 컴퓨터) 간에 XML, JSON(JavaScript Object Notation), 텍스트, HTML 등의 정보를 교환하기 위해서임. Ajax를 이용하면 사용자가 서버에 자료를 요청할 때 화면 전환 없이 요청한 자료를 전송받을 수 있음. 또한, 자료를 요청할 경우 어느 정도 시간이 소요되는데 반해 Ajax 를 이용하면 사용자가 기다릴 필요 없이 다른 작업을 바로 수행할 수 있음.

카페나 블로그의 게시글에 갯글을 날 때 페이지 전환 없이 바로 할 수 있는 것도 Ajax 를 사용했기 때문이며, 페이스북의 댓글 기능과 구글 지도 등에도 사용되고 있음.

우선, Ajax 를 테스트하려면 웹 서버(Web Server) 가 필요함.

웹 서버 설치하기

웹 서버 는 웹 서비스를 제공하는 컴퓨터를 의미함. 완성된 웹 문서를 컴퓨터에 저장만 해둔다면 외부에 있는 사용자는 완성된 웹 문서를 볼 수 없어 서비스를 받을 수 없음. 외부에 있는 사용자가 완성된 웹 문서를 볼 수 있도록 하려면 웹 서버를 구축하고 웹 서버에 완성된 HTML 문서를 저장해야함.

Ajax 를 이용해 사용자가 폼에 입력 요소를 작성해서 데이터를 전송하고 응답을 요청하는 테스트를 수행하려면 웹 서버 도 필요하지만, 데이터를 전송하여 요청한 응답을 전송해 줄 액션 페이지(Action Page) 도 필요함. 이때 일반적으로 액션 페이지는 서버 측 스크립트 페이지PHP, ASP, JSP 를 이용해 작성함. 서버 측 스크립트 페이지 는 전송받은 데이터를 이용하여 정상적인 데이터인지 검사한 후 응답값을 되돌려 전송해줌. 이 서버 측 스크립트 페이지서버 컴퓨터에 저장되어 있어야 정상적으로 작동함.

😀 서버 측 스크립트 언어란?

프로그래밍 언어는 크게 클라이언트 측(Client Side) 언어와 서버 측(Server Side) 언어로 나뉘어짐. 대표적인 클라이언트 측 언어로는 자바스크립트 가 있고, 서버 측 언어로는 PHP, ASP, JSP가 있음. 두 언어의 차이점은 클라이언트 측 언어의 경우는 방문자의 컴퓨터에서 프로그래밍이 수행되지만, 서버 측 언어는 서버에서 프로그래밍이 수행된다는 점임. 그러므로 사이트에서 동적인 사용자 환경을 개발할 때는 주로 클라이언트 측 언어를 사용하고, 서버 측 데이터베이스에서 저장된 데이터를 불러오거나 사용자가 전송한 데이터를 저장할 때는 주로 서버 측 언어를 사용함.

예를 들어, 사이트 방문객이 로그인 폼에 아이디와 비밀번호를 입력한 후 로그인 버튼을 눌렀을 때 등록된 회원인지를 검사하기 전에 먼저 올바른 아이디와 비밀번호 형식에 맞게 작성했는지 검사가 이루어져야 함. 이때는 방문객 컴퓨터에서 프로그래밍이 수행되어 올바른 아이디와 비밀번호 형식인지 체크해도 되므로 클라이언트 측 언어인 자바스크립트 또는 제이쿼리 를 사용함.
형식에 올바르게 아이디와 비밀번호를 작성했다면 액션(action) 페이지인 서버 사이드 측 스크립트 페이지에서 방문객이 입력한 아이디와 비밀번호 데이터를 전송받아 데이터베이스와 일치하는 아이디와 비밀번호가 존재하는지의 여부를 검사함. 검사해서 만일 존재할 경우에는 "~님 방문을 환경합니다."라고 값을 반환하고, 존재하지 않을 경우에는 "아이디 또는 비밀번호가 일치하지 않습니다."라고 값을 반환함.

😀 웹 서버와 웹 호스팅의 차이점

웹 서버와 웹 호스팅 모두 방문객인 클라이언트(Client)에게 웹 서비스를 제공함. 하지만 웹 서버의 경우는 사용자가 직접 컴퓨터에 서버를 구축하여 웹 서비스를 제공하므로 웹 서버에 대한 전문 지식이 있어야 하며, 전용 회선을 갖추고 있어야 사용할 수 있음.
웹 호스팅의 경우 이미 서버가 구축된 외부 컴퓨터에 다수의 사용자가 소량의 저장 공간을 나눠 임대하여 사용하는 것을 말함. 그러므로 서버에 대한 전문 지식이 없어도 사용할 수 있다는 편리성은 있지만 저장 공간의 용량 제한이 있다는 단점이 있음.


0개의 댓글