#android
#Android
Вопрос:
Это моя ссылка http://amancomputers.com/mm/pma-front/services/reply.php
Link content->INSERT INTO incomming_message(content,date,image) VALUES('',now(),''){"login":1}
Я хочу отправить текст и изображение в виде содержимого и изображения соответственно с помощью моего приложения для Android. Я пробовал этот код
@Override
protected String doInBackground(String... params) {
//for(int i=0;i<5;i ) {
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://amancomputers.com/mm/pma-front/services/reply.php");
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("content","name abcd"));
nameValuePairs.add(new BasicNameValuePair("image", "AndDev is Cool!"));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return "success";
}
Я пробовал этот код. Но моя проблема в том, что создается новый идентификатор, но я не могу отправить текст или изображение на сервер.
и мое исключение находится в logcat:
unable to convert java.lang.string into jsonobjects
Ответ №1:
Вы создаете JSONObject
из этого String
(«12345») недопустимый json, попробуйте использовать допустимую строку json, например
JSONObject jsonObject = new JSONObject("{"whatever":"12345"}");
или просто пустой объект
JSONObject jsonObject = new JSONObject();
Комментарии:
1. могу ли я сделать это nameValuePairs.add(new BasicNameValuePair(«content», JSONObject));
2. @user3764509 Я так не думаю, значение должно быть строкой. В вашем случае это будет .. «content», JSONObject.toString())); Дело в том, для чего вам нужен JSONObject?
3. мое исключение 06-22 05:35:04.140: электронная/незачет 3(7733): орг.в формате JSON.JSONException: Значение <!DOCTYPE of type java.lang. Строка не может быть преобразована в JSONObject
4. @user3764509 это означает, что вы пытаетесь проанализировать строку, отличную от json, как json, это та же проблема, которую я затронул в своем ответе. как вы инициализируете JSONObject?
5. спасибо за вашу поддержку. я решил проблему. Моя проблема заключалась в том, что я давал неправильное значение namevaluepair, моим именем параметра на сервере было get message, и я предоставлял контент