Click or drag to resize

ASP 페이지에서 JSON 오브젝트 반환

일반적으로 AJAX 요청에 대한 결과로 많은 경우 JSON 데이터를 반환합니다. TABS.JSON 컴포넌트를 이용하면 ASP 페이지에서 JSON 데이터를 편리하고 직관적으로 생성할 수 있습니다.

JSON 텍스트를 반환

ASP 페이지에서 TABS.JSON 오브젝트를 생성한 후 속성과 값을 지정한 후 ToString 메서드를 호출해 JSON 텍스트를 생성할 수 있습니다. 이 텍스트를 자바스크립트의 JSON.parse() 메서드로 전달해 자바스크립트 오브젝트로 변환해 액세스할 수 있습니다.

ASP에서 문자열, 숫자 부울 값 등을 JSON 오브젝트의 속성에 지정할 수 있습니다. 기본 데이터 형식 외에 또 다른 TABS.JSON 오브젝트를 생성해 JSON 오브젝트의 속성에 지정하는 것도 가능합니다. 오브젝트의 속성이 또 다른 오브젝트가 되는 구조입니다. 그리고 VBScript 배열을 직접 JSON 오브젝트의 속성에 지정할 수 있습니다.

ASP
Dim json
Set json = Server.CreateObject("TABS.JSON")

'오브젝트에 프로퍼티 값 추가
json("name") = "홍길동"
json("age") = 20
json("male") = True
json("address") = Null

'오브젝트의 프로퍼티에 또 다른 오브젝트 추가
Set family = Server.CreateObject("TABS.JSON")
family("count") = 2
family("father") = "홍판서"
family("mother") = "춘섬"
json("family") = family

'오브젝트의 프로퍼티에 배열 추가
Dim vector(2)
vector(0) = 100
vector(1) = 200
vector(2) = 300
json("vector") = vector

Response.Write json.ToString(0)

위 코드를 실행해서 생성된 JSON 텍스트는 아래와 같습니다.

{"address":null,"age":20,"family":{"count":2,"father":"홍판서","mother":"춘섬"},"male":true,"name":"홍길동","vector":[100,200,300]}

배열로부터 JSON 텍스트를 반환

ASP 페이지에서 TABS.JSON 오브젝트를 생성한 후 속성과 값을 지정한 후 ToString 메서드를 호출해 JSON 텍스트를 생성할 수 있습니다. 이 텍스트를 자바스크립트의 JSON.parse() 메서드로 전달해 자바스크립트 오브젝트로 변환해 액세스할 수 있습니다.

ASP에서 문자열, 숫자 부울 값 등을 JSON 오브젝트의 속성에 지정할 수 있습니다. 기본 데이터 형식 외에 또 다른 TABS.JSON 오브젝트를 생성해 JSON 오브젝트의 속성에 지정하는 것도 가능합니다. 오브젝트의 속성이 또 다른 오브젝트가 되는 구조입니다. 그리고 VBScript 배열을 직접 JSON 오브젝트의 속성에 지정할 수 있습니다.

ASP
Dim json, persons(2)
Set json = Server.CreateObject("TABS.JSON")

'JSON 오브젝트를 생성한 후 배열에 추가한다.
For I = 0 To 2
    Set person = Server.CreateObject("TABS.JSON")
    person("name") = "홍길동" & I
    person("age") = 20 + I
    Set persons(I) = person
Next

'배열을 JSON 텍스트로 변환한다.
Response.Write json.ToStringFromArray(persons, 0)

위 코드를 실행해서 생성된 JSON 텍스트는 아래와 같습니다.

[{"name":"홍길동0","age":20},{"name":"홍길동1","age":21},{"name":"홍길동2","age":22}]