2012-09-26 4 views
0

JSON을 페이로드로 사용할 수있는 RESTful 웹 서비스를 구축 중입니다. . 이제 제 질문은 JSON 요청이 들어오는 형식을 사용자에게 정확히 어떻게 설명할까요? 저는 JSON을 처음 사용하고 100 % 이해하지 못한다고 생각합니다.JSON 데이터를 웹 서비스 - 예상되는 JSON 데이터를 정의하는 방법

다른 사용자 시스템은 기본적으로 필요한 키 값 쌍을 사용하여 데이터 구조 (배열)를 만들고,이를 JSON으로 인코딩하고이를 내 웹 서비스로 보냅니 까?

문자 그대로 어레이의 모양을 복사 해 둡니다. 감사합니다.

+1

** JSON으로 인코딩 된 데이터를 출력하려면 ** REST 서비스가 일반적입니다. JSON으로 인코딩 된 (표준 GET 쿼리 매개 변수 나 POST 데이터 값이 아닌) ** 입력 **을 실제로 사용하고 있습니까? – MidnightLightning

+0

무엇이 가장 일반적입니까? POST 값이 표준이면, 나는 그 값으로 갈 것이다. 이 서비스는 많은 제품 코드/수량을 수용 할 것입니다. 이 데이터를 POST를 통해 어떻게 전달합니까? something : product_1 = item1 & product_1_qty = 2 & product_2 = item2 & product_2_qty = 5? – Lock

+0

데이터 업데이트의 경우 POST가 일반적이며 RESTful 방법론에 필요합니다. 전체 설명을 보려면 내 대답을 참조하십시오. – MidnightLightning

답변

1

REST의 가이드 라인을 따르면 API 사용자가 얻는 입력은 URL의 일부 (GET 요청의 경우 데이터를 업데이트하지 않음, 즉 http://example.com/api/doc/1243)이거나 POST 변수 여야합니다 (HTTP 요청 본문에서 동일한 URL로 전송 됨).

그래서 문서를 들어, 당신이해야한다 모두 (즉 title, body, author 등) 엔드 포인트 URL (http://example.com/api/doc/1243), 그들이 POST를 사용하는 데 필요한 사실, 어떤 변수가를 표시합니다. 그런 다음 사용자는 PHP를 사용하고 있기 때문에, 당신은 (즉 $_POST['title'], $_POST['body'] 등) $_POST 배열

+0

고맙습니다. 아주 좋은 답변입니다. 예를 들어 장바구니를 예로 들면, 제품이 쿼리 문자열로 전달되는 방식 (많은 제품이있을 수 있으므로)은 무엇입니까? "product_1 = test & product_1_qty = 4 & product_2 = test2 & product_2_qty = 9? 등? – Lock

+0

카트에 제품을 추가하는 방법은 이렇게 구성 할 수 있습니다. 또는 최종 사용자가"장바구니에 추가 "방법을 여러 번 호출하도록 할 수 있습니다 , 각 제품에 대해 한 번 : 여러 번 호출되는 'product_id'및 'quantity'데이터로 끝점 인'/ api/cart/1243/add'이 필요합니다 – MidnightLightning

1

Dropbox가에서 자신의 변수를 당길 것, 그들이 원하는하지만 적절한 HTTP 요청을 형성하고, 서버 끝에합니다 JSON을 페이로드로 사용하는 편안한 API의 좋은 예입니다.

API를 문서화하는 방법에 대해서도 알게 될 것입니다.

+1

감사합니다. – Lock

관련 문제