java33.HTTP通信------使用Http的Post方式与网络交互通信

来源:互联网 发布:nba1415赛季总决赛数据 编辑:程序博客网 时间:2024/05/16 14:14

代码:

import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;import java.io.OutputStreamWriter;import java.net.HttpURLConnection;import java.net.MalformedURLException;import java.net.URL;public class TestPost {    public static void main(String[] args) {        new ReadByPost().start();    }}class ReadByPost extends Thread {    public void run() {        try {            URL url = new URL("http://fanyi.youdao.com/openapi.do");            HttpURLConnection connection = (HttpURLConnection) url                    .openConnection();            // connection创建之后必须紧接着它的所有参数,不能有连接之后设定            connection.addRequestProperty("encoding", "UTF-8");            connection.setDoInput(true);// 当前的connection可以从网络获取数据            connection.setDoOutput(true);// 向互联网传输数据            connection.setRequestMethod("POST");            // post:先向浏览器发送数据            OutputStream os = connection.getOutputStream();            OutputStreamWriter osw = new OutputStreamWriter(os);            BufferedWriter bw = new BufferedWriter(osw);            // 先对服务器进行输出            bw.write("keyfrom=CLP-test&key=1870425496&type=data&doctype=xml&version=1.1&q=welcome");            bw.flush();// 强制输出,flush一下            InputStream is = connection.getInputStream();            InputStreamReader isr = new InputStreamReader(is);// 包装成inputstreamreader            BufferedReader br = new BufferedReader(isr);            String line;            StringBuilder builder = new StringBuilder();            while ((line = br.readLine()) != null) {                builder.append(line);            }            bw.close();            osw.close();            os.close();            br.close();            isr.close();            is.close();            System.out.println(builder.toString());        } catch (MalformedURLException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        }    }}

结果:

这里写图片描述

0 0
原创粉丝点击