服务器-HttpURLConnection post

问题描述

HttpURLConnection post

用 HttpURLConnection post请求提交服务器 提交成功 后 , 怎么得到服务器返回的JSON json 里只有提交成功 还有一个状态码。

我用connection.getResponseMessage(); 只是返回的是 个OK 。 我想得到返会的Json

解决方案

connection.getInputStream();
你的问题比较抽象,因为不知道你在请求什么东西。但是获取服务器里返回的东西,应该是这种写法,最后你需要用流去处理一下。

解决方案二:

connection.getResponseMessage(); 获取的response的状态信息,或者是null,贴上 api

想获取 json 信息,应该先获取到流,用 connection.getInputStream() 返回 InputStream 然后再解析.

解决方案三:

你应该处理的是响应数据流里面的信息,读取数据流里面的信息解析成字符串格式,然后用JSON转换工具进行处理。参考代码如下:

 /**
     * 以http方式发送请求,并将请求响应内容以String格式返回
     * @param path    请求路径
     * @param method  请求方法
     * @param body    请求数据
     * @return 返回响应的字符串
     */
    public static String httpRequestToString(String path, String method, String body) {
        String response = null;
        HttpURLConnection conn = null;
        InputStream inputStream = null;
        InputStreamReader inputStreamReader = null;
        BufferedReader bufferedReader = null;
        try {
            URL url = new URL(path);
            conn = (HttpURLConnection) url.openConnection();
            conn.setDoOutput(true);
            conn.setDoInput(true);
            conn.setUseCaches(false);
            conn.setRequestMethod(method);
            if (null != body) {
                OutputStream outputStream = conn.getOutputStream();
                outputStream.write(body.getBytes("UTF-8"));
                outputStream.close();
            }

            inputStream = conn.getInputStream();
            inputStreamReader = new InputStreamReader(
                    inputStream, "UTF-8");
            bufferedReader = new BufferedReader(
                    inputStreamReader);
            String str = null;
            StringBuffer buffer = new StringBuffer();
            while ((str = bufferedReader.readLine()) != null) {
                buffer.append(str);
            }

            response = buffer.toString();
        } catch (Exception e) {
            logger.error(e);
        }finally{
            if(conn!=null){
                conn.disconnect();
            }
            try {
                bufferedReader.close();
                inputStreamReader.close();
                inputStream.close();
            } catch (IOException execption) {
                logger.error(execption);
            }
        }
        return response;
    }

然后,对于这个请求响应返回的字符串信息,用JSON处理工具来解析就OK了。

解决方案四:

HttpURLConnection post 请求
HttpURLConnection POST 上传文件
HttpURLConnection-POST-GSON

时间: 2024-09-30 17:26:57

服务器-HttpURLConnection post的相关文章

使用httpurlconnection请求服务器得不到xml数据

问题描述 使用httpurlconnection请求服务器得不到xml数据 我已知一个服务器开放的访问地址查询不同城市的天气,城市名称作为url地址的一个参数,用浏览器访问可以得到相应城市的xml格式的天气信息,但是我在手机中使用HttpURLConnection请求服务器得到的只是天气信息的xml完整结构而没有数据,,我已经对中文城市名进行了utf8编码,服务器返回的xml中也含有该城市的名称,就是没有天气数据,请问各位这是为什么? 其中,city_name已经进行了utf8编码,addres

Android程序开发通过HttpURLConnection上传文件到服务器_Android

 一:实现原理 最近在做Android客户端的应用开发,涉及到要把图片上传到后台服务器中,自己选择了做Spring3 MVC HTTP API作为后台上传接口,android客户端我选择用HttpURLConnection来通过form提交文件数据实现上传功能,本来想网上搜搜拷贝一下改改代码就好啦,发现根本没有现成的例子,多数的例子都是基于HttpClient的或者是基于Base64编码以后作为字符串来传输图像数据,于是我不得不自己动手,参考了网上一些资料,最终实现基于HttpURLConnec

使用HttpURLConnection向服务器发送post和get请求(转)

一.使用HttpURLConnection向服务器发送get请求 1.向服务器发送get请求 @Testpublicvoid sendSms() throws Exception{ String message="货已发到"; message=URLEncoder.encode(message, "UTF-8"); System.out.println(message); String path ="http://localhost:8083/DS_Tra

Android程序开发通过HttpURLConnection上传文件到服务器

一:实现原理 最近在做Android客户端的应用开发,涉及到要把图片上传到后台服务器中,自己选择了做Spring3 MVC HTTP API作为后台上传接口,android客户端我选择用HttpURLConnection来通过form提交文件数据实现上传功能,本来想网上搜搜拷贝一下改改代码就好啦,发现根本没有现成的例子,多数的例子都是基于HttpClient的或者是基于Base64编码以后作为字符串来传输图像数据,于是我不得不自己动手,参考了网上一些资料,最终实现基于HttpURLConnect

应用HttpClient来对付各种顽固的WEB服务器

一般的情况下我们都是使用IE或者Navigator浏览器来访问一个WEB服务器,用来浏览页面查看信息或者提交一些数据等等.所访问的这些页面有的仅仅是一些普通的页面,有的需要用户登录后方可使用,或者需要认证以及是一些通过加密方式传输,例如HTTPS.目前我们使用的浏览器处理这些情况都不会构成问题.不过你可能在某些时候需要通过程序来访问这样的一些页面,比如从别人的网页中"偷"一些数据:利用某些站点提供的页面来完成某种功能,例如说我们想知道某个手机号码的归属地而我们自己又没有这样的数据,因此

Android HTTP 实现与服务器通信

  Android与服务器通信通常采用HTTP通信方式和Socket通信方式,而HTTP通信方式又分get和post两种方式.至于Socket通信会在以后的博文中介绍. HTTP协议简介: HTTP (Hypertext Transfer Protocol ),是Web联网的基础,也是手机联网常用的协议之一,HTTP协议是建立在TCP协议之上的一种协议. HTTP连接最显著的特点是客户端发送的每次请求都需要服务器回送响应,在请求结束后,会主动释放连接.从建立连接到关闭连接的过程称为"一次连接&q

android-http post方法传递到服务器null值

问题描述 http post方法传递到服务器null值 try { url= new URL(ConstantsClass.VENDOR_FOLLOW + ""?UID="" +android_id+""&URL='""+resultfinal+""'&device=android""); connection = (HttpURLConnection) url.open

用服务器的80端口怎麽跟android交换数据?谁能提供个ASP.net参考范例程序?

问题描述 用服务器的80端口怎麽跟android交换数据?谁能提供个ASP.net参考范例程序? 目前服务器只有80端口开放,android端用HttpURLconnection类通讯交换数据.不知服务器这端用ASP.NET如何实现?如有人知道,请提供个DEMO程序. 解决方案 两个例子http://www.tuicool.com/articles/IvaAjavhttp://xdwangiflytek.iteye.com/blog/1698300 解决方案二: 用ASP.NET的C#语言实现.

【黑马Android】(05)短信/查询和添加/内容观察者使用/子线程网络图片查看器和Handler消息处理器/html查看器/使用HttpURLConnection采用Post方式请求数据/开源项目

备份短信和添加短信 操作系统短信的uri: content://sms/ <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.itheima28.backupsms" android:versionCode="1