java 发送 json、xml格式的 http请求,并读取响应response内容实例
2012-11-23 11:46
686 查看
java 发送 json、xml格式的 http请求,需要确定接受请求的的服务器地址(ip、端口、具体的目录)
然后设置连接属性信息
请求的数据格式(json 或 xml)
根据需要是否要向服务器发送消息体(可以只发送http头,不发具体的信息),数据格式要与设置的http头信息设置的格式一致,如果想查看发送和服务器的响应的具体信息 可以使用 http抓包工具,如 httpAnalizer等软件,查看请求数据格式是否正确。
具体代码如下(请求数据格式为json):
然后设置连接属性信息
请求的数据格式(json 或 xml)
根据需要是否要向服务器发送消息体(可以只发送http头,不发具体的信息),数据格式要与设置的http头信息设置的格式一致,如果想查看发送和服务器的响应的具体信息 可以使用 http抓包工具,如 httpAnalizer等软件,查看请求数据格式是否正确。
具体代码如下(请求数据格式为json):
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import org.json.JSONObject; import org.json.JSONArray; public class AppAddTest { public static final String ADD_URL = "http://192.168.4.68:35357/v2.0/users"; // public static final String ADD_URL = "http://192.168.4.97:35357/v2.0/tokens"; public static void appadd() throws IOException { HttpURLConnection connection=null; try { //创建连接 URL url = new URL(ADD_URL); connection = (HttpURLConnection) url.openConnection(); //设置http连接属性 connection.setDoOutput(true); connection.setDoInput(true); connection.setRequestMethod("POST"); // 可以根据需要 提交 GET、POST、DELETE、INPUT等http提供的功能 connection.setUseCaches(false); connection.setInstanceFollowRedirects(true); //设置http头 消息 connection.setRequestProperty("Content-Type","application/json"); //设定 请求格式 json,也可以设定xml格式的 //connection.setRequestProperty("Content-Type", "text/xml"); //设定 请求格式 xml, connection.setRequestProperty("Accept","application/json");//设定响应的信息的格式为 json,也可以设定xml格式的 // connection.setRequestProperty("X-Auth-Token","xx"); //特定http服务器需要的信息,根据服务器所需要求添加 connection.connect(); //添加 请求内容 JSONObject user = new JSONObject(); user.put("name", "alice4"); user.put("roles", "admin"); user.put("enabled", "true"); user.put("tenantId", "998abe42845e4f258da7e96b0d8335ec"); user.put("password", "mypassword123"); //构建嵌套的 json数据 JSONObject obj = new JSONObject(); obj.put("user",user); OutputStream out = connection.getOutputStream(); out.write(obj.toString().getBytes()); out.flush(); out.close(); // 读取响应 BufferedReader reader = new BufferedReader(new InputStreamReader( connection.getInputStream())); String lines; StringBuffer sb = new StringBuffer(""); while ((lines = reader.readLine()) != null) { lines = new String(lines.getBytes(), "utf-8"); sb.append(lines); } System.out.println(sb); reader.close(); //// 断开连接 connection.disconnect(); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void main(String[] args) throws IOException { appadd(); } }
相关文章推荐
- JAVA发送HTTP请求(post、get),读取HTTP响应内容,实例及应用
- JAVA发送HTTP请求,返回HTTP响应内容,实例及应用
- JAVA发送HTTP请求,返回HTTP响应内容,实例及应用
- JAVA发送HTTP请求,返回HTTP响应内容,实例及应用
- JAVA发送HTTP请求,返回HTTP响应内容,实例及应用
- 使用JAVA发送HTTP请求(Http Request),返回HTTP响应(Http Response)内容,代码程序例子及原理说明
- JAVA发送HTTP请求,返回HTTP响应内容,实例及应用
- JAVA发送HTTP请求,返回HTTP响应内容,实例及应用
- JAVA发送HTTP请求,返回HTTP响应内容,应用及实例代码
- JAVA发送HTTP请求,返回HTTP响应内容,实例及应用
- 对于java用发送http请求,请求内容为xml格式
- [JAVA] HTTP请求,返回响应内容,实例及应用
- Java在发送HTTP请求时,遇到身份验证无法获取到response内容的解决方法
- 对于java用发送http请求,请求内容为xml格式
- 对于java用发送http请求,请求内容为xml格式
- java-springmvc+filter 替换输出流、response、响应内容
- 前台使用$.ajax()发送json数据,服务器响应后返回json数据实例(struts2+json+action)
- 分享非常有用的Java程序(关键代码)(八)---Java InputStream读取网络响应Response数据的方法!(重要)
- java使用poi读取excel内容方法实例
- java以json格式向后台服务器接口发送请求的实例