2015-05-10 2 views
0

Я пытаюсь добавить Book(title, author, year) в мою таблицу book на сервере, используя AsyncTask, но я получаю missing bookobject as JSON по методу addBook (с сервера). Таким образом, я сделал bookObject так:Как отправить объект как JSON на сервер с помощью NameValuePairs?

JSONObject jObj = new JSONObject(); 
jObj.put("title", "JAVA"); 
jObj.put("author", "me"); 
jObj.put("year", 2005); 

После этого, я хочу использовать (мое намерение состоит в том, чтобы отправить эту книгу Object):

List<NameValuePair> nameValuePairs = new ArrayList<>(1); 
nameValuePairs.add(new BasicNameValuePair(jObj));  //Error 
new AaaBookAsyncTask(this).execute(new Pair<>(nameValuePairs, httpClient)); 

Проблема BasicNameValuePair не может применяться к JSONObject, но теперь как я могу отправить книгу Object? - Любая помощь или подсказки очень ценится. Спасибо, Carl

ответ

0

Вы можете отправить JSON в виде строки и затем декодировать ее на своем сервере, прежде чем хранить ее в своей базе данных.

+0

Я пробовал это. Например, 'String json = gson.toJson (book)', но я получаю одно и то же сообщение: 'missing bookobject as JSON'. Я просто хочу отправить «Объект». В дополнение к этому я не могу добраться до сервера/метода внутри него. Я получаю только сообщение или нет! – carl