마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

json 전송 관련 문의 드립니다.

0 추천
저는 jiver를 이용해서 체팅 앱을 구상중 입니다.

그런데 채널을 만들기 위해서 post 방식의 json을 사용하라고 되어 있습니다.

https://sendbird.gitbooks.io/sendbird-server-api/content/en/channel.html

이곳에서 보는대로 사용을 하려고 하는데

제가 json을 잘 몰라서요

어떤 공부를 해봐야 할지요?

json을 보내고 받는 방법에 대한 자료나 샘플 코드가 있으시다면

공유해 주실수 있으신지요?

 

초보 개발자입니다. 잘부탁 드립니다.
빛의선물 (180 포인트) 님이 2016년 1월 11일 질문

1개의 답변

0 추천
json 문법형태는 검색하시면 많이 나와서 뭐 따로 설명 드릴필요는 없을것 같구요

문법은 공부를 좀하셔야합니다. object인지, array인지 []가 붙으면 array입니다.

 

일단 기본적으로 json으로 서버에서 데이터를 전송받으면 json형태의 String으로 전달을 받습니다.

예를 들면 서버에서 전달받은 것을 jsonString이라는 String 변수에 넣고 아래와 같이 작성합니다.

JSONObject json = new JSONObject(jsonString);
json.optString("code");

json에서 code라는 키값을 가진 String을 가져오는 부분입니다. optString을 하시면 데이터가 있을때만 가져옵니다.

그냥 json.getString으로도 가져올수있는데 그렇게하면 null값을 다 체크해야 하는 번거로움이 생깁니다.

JsonArray일경우에 키값이 data라면, 이런식으로 파싱이 가능합니다.

JSONArray jArray = json.optJSONArray("data");

약간 수동으로 해야하는 번거로움이 있기때문에 기본적인 jsonObject인지 jsonArray인지 구분을 할수 있어야 합니다.

이것을 쉽게 할수있게 하기위해서 구글에서 Gson 라이브러리를 제공합니다.

json 공부를 하시거면 수동으로 해보셔도 좋고, 적응이 된다면 Gson을 공부하셔서 사용하시면 간단하게 구현할수 있습니다.
캬옹이 (37,920 포인트) 님이 2016년 1월 12일 답변
답변 감사합니다.
서버쪽에서 요구하는게 주소와 json 형식의 문장 인데요
이때 주소를 가지고 접속을 한 다음
보내주는(앱->서버) 문장을 서버가 확인 해서 답변을 주는 구조 인가요?

주소는 https://api.sendbird.com/channel/create 이고
Request 는
{
    "auth": API_TOKEN,
    "channel_url": string, // Channel Url
    "name": string, // Topic
}
입니다.
이 두가지를 보내는 방법이 어떤게 있는지 궁굼합니다.
...