java模拟post提交

package javapost;

import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.security.MessageDigest;

public class RZBService {
    
    public static void main(String[] args) {    
        //注意:参数必须要经过utf-8编码
        simpleCheck();
   
    }
  
    static void simpleCheck(){
        String account = "xxx"; // 账号
        String pwd = "xxx"; // 密码
        String sign = md5(md5(xxxx+ xxxx) + xxxx);
        String url="xxxxxx";
        String postdata="";
        try {
            postdata = "idNumber=" + idNumber
                            + "&name=" + URLEncoder.encode(name, "UTF-8")
                            + "&account=" + account
                            //+ "&pwd="+ pwd
                            + "&sign=" + sign;
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        String json="";
        try {
            json = readContentFromPost(url, postdata);
        } catch (IOException e) {
            e.printStackTrace();
        }
        System.out.println(json);
    }

    static String md5(String text) {
        byte[] bts;
        try {
            bts = text.getBytes("UTF-8");
            MessageDigest md = MessageDigest.getInstance("MD5");
            byte[] bts_hash = md.digest(bts);
            StringBuffer buf = new StringBuffer();
            for (byte b : bts_hash) {
                buf.append(String.format("%02X", b & 0xff));
            }
            return buf.toString();
        } catch (java.io.UnsupportedEncodingException e) {
            e.printStackTrace();
            return "";
        } catch (java.security.NoSuchAlgorithmException e) {
            e.printStackTrace();
            return "";
        }
    }

    public static String readContentFromPost(String POST_URL,String postdata) throws IOException{  
            URL postUrl = new URL(POST_URL);  
            HttpURLConnection connection = (HttpURLConnection) postUrl.openConnection();  
            connection.setDoOutput(true);  
            connection.setDoInput(true);  
            connection.setRequestMethod("POST");  
            connection.setUseCaches(false);  
            connection.setInstanceFollowRedirects(true);  
            connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");  
            connection.connect();  
            DataOutputStream out = new DataOutputStream(connection.getOutputStream());  
            out.writeBytes(postdata);   
            out.flush();  
            out.close();   
            BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream(),"utf-8"));//设置编码,否则中文乱码  
            String line="";  
            StringBuffer response = new StringBuffer();
            while ((line = reader.readLine()) != null){  
                response.append(line);
            }  
            reader.close();  
            connection.disconnect();  
            return response.toString();
        }  
}

 

posted @ 2017-07-06 15:16  幸福安康  阅读(233)  评论(0编辑  收藏  举报