Привет, я разрабатываю небольшое приложение для Android, в котором хочу использовать почтовый запрос HttpUrlConnection с параметрами в качестве объекта json. Но у меня это не работает, я сделал это следующим образом:
try
{
URL url;
DataOutputStream printout;
DataInputStream input;
url = new URL ("https://abc.com");
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestMethod("POST");
urlConnection.setDoInput (true);
urlConnection.setDoOutput (true);
urlConnection.setUseCaches (false);
urlConnection.setConnectTimeout(10000);
urlConnection.setReadTimeout(10000);
urlConnection.setRequestProperty("Content-Type","application/json");
urlConnection.connect();
JSONObject jsonParam = new JSONObject();
JSONArray arr = new JSONArray();
arr.put("LNCf206KYa5b");
arr.put("oWdC0hnm1jjJ");
jsonParam.put("places", arr);
jsonParam.put("action", "Do");
printout = new DataOutputStream(urlConnection.getOutputStream ());
printout.writeUTF(URLEncoder.encode(jsonParam.toString(),"UTF-8"));
printout.flush ();
printout.close ();
int HttpResult =urlConnection.getResponseCode();
if(HttpResult ==HttpURLConnection.HTTP_OK){
BufferedReader br = new BufferedReader(new InputStreamReader(
urlConnection.getInputStream(),"utf-8"));
String line = null;
while ((line = br.readLine()) != null) {
sb.append(line + "\n");
}
br.close();
//System.out.println(""+sb.toString());
}else{
System.out.println(urlConnection.getResponseMessage());
}
} catch (MalformedURLException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(urlConnection!=null)
urlConnection.disconnect();
}
}
Он не выдает ни кода ответа, ни вывода. Я делаю что-то не так? Как решить эту проблему. Нужна помощь. Спасибо.
Я получил следующую системную ошибку
06-07 09:55:58.171: W/System.err(4624): java.io.IOException: Received authentication challenge is null
06-07 09:55:58.171: W/System.err(4624): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.processAuthHeader(HttpURLConnectionImpl.java:1153)
06-07 09:55:58.171: W/System.err(4624): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.processResponseHeaders(HttpURLConnectionImpl.java:1095)
06-07 09:55:58.171: W/System.err(4624): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.retrieveResponse(HttpURLConnectionImpl.java:1048)
06-07 09:55:58.171: W/System.err(4624): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:726)
06-07 09:55:58.179: W/System.err(4624): at org.apache.harmony.luni.internal.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:121)
06-07 09:55:58.179: W/System.err(4624): at com.mobiotics.qcampaigns.data.operation.ProximityOperation.execute(ProximityOperation.java:187)
06-07 09:55:58.179: W/System.err(4624): at com.foxykeep.datadroid.service.RequestService.onHandleIntent(RequestService.java:145)
06-07 09:55:58.179: W/System.err(4624): at com.foxykeep.datadroid.service.MultiThreadedIntentService$IntentRunnable.run(MultiThreadedIntentService.java:170)
Подробнее здесь: https://stackoverflow.com/questions/169 ... ct-android
HttpUrlConnection с запросом на публикацию и параметром как объект Json android ⇐ Android
Форум для тех, кто программирует под Android
1766757775
Anonymous
Привет, я разрабатываю небольшое приложение для Android, в котором хочу использовать почтовый запрос HttpUrlConnection с параметрами в качестве объекта json. Но у меня это не работает, я сделал это следующим образом:
try
{
URL url;
DataOutputStream printout;
DataInputStream input;
url = new URL ("https://abc.com");
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestMethod("POST");
urlConnection.setDoInput (true);
urlConnection.setDoOutput (true);
urlConnection.setUseCaches (false);
urlConnection.setConnectTimeout(10000);
urlConnection.setReadTimeout(10000);
urlConnection.setRequestProperty("Content-Type","application/json");
urlConnection.connect();
JSONObject jsonParam = new JSONObject();
JSONArray arr = new JSONArray();
arr.put("LNCf206KYa5b");
arr.put("oWdC0hnm1jjJ");
jsonParam.put("places", arr);
jsonParam.put("action", "Do");
printout = new DataOutputStream(urlConnection.getOutputStream ());
printout.writeUTF(URLEncoder.encode(jsonParam.toString(),"UTF-8"));
printout.flush ();
printout.close ();
int HttpResult =urlConnection.getResponseCode();
if(HttpResult ==HttpURLConnection.HTTP_OK){
BufferedReader br = new BufferedReader(new InputStreamReader(
urlConnection.getInputStream(),"utf-8"));
String line = null;
while ((line = br.readLine()) != null) {
sb.append(line + "\n");
}
br.close();
//System.out.println(""+sb.toString());
}else{
System.out.println(urlConnection.getResponseMessage());
}
} catch (MalformedURLException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(urlConnection!=null)
urlConnection.disconnect();
}
}
Он не выдает ни кода ответа, ни вывода. Я делаю что-то не так? Как решить эту проблему. Нужна помощь. Спасибо.
Я получил следующую системную ошибку
06-07 09:55:58.171: W/System.err(4624): java.io.IOException: Received authentication challenge is null
06-07 09:55:58.171: W/System.err(4624): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.processAuthHeader(HttpURLConnectionImpl.java:1153)
06-07 09:55:58.171: W/System.err(4624): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.processResponseHeaders(HttpURLConnectionImpl.java:1095)
06-07 09:55:58.171: W/System.err(4624): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.retrieveResponse(HttpURLConnectionImpl.java:1048)
06-07 09:55:58.171: W/System.err(4624): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:726)
06-07 09:55:58.179: W/System.err(4624): at org.apache.harmony.luni.internal.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:121)
06-07 09:55:58.179: W/System.err(4624): at com.mobiotics.qcampaigns.data.operation.ProximityOperation.execute(ProximityOperation.java:187)
06-07 09:55:58.179: W/System.err(4624): at com.foxykeep.datadroid.service.RequestService.onHandleIntent(RequestService.java:145)
06-07 09:55:58.179: W/System.err(4624): at com.foxykeep.datadroid.service.MultiThreadedIntentService$IntentRunnable.run(MultiThreadedIntentService.java:170)
Подробнее здесь: [url]https://stackoverflow.com/questions/16976240/httpurlconnection-with-post-request-and-parameter-as-json-object-android[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия