zoukankan      html  css  js  c++  java
  • 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();
            }  
    }
  • 相关阅读:
    node基础和express服务器框架知识点总结
    Nacos配置服务原理
    Queue-PriorityQueue源码解析
    Mysql存储结构
    Mybatis处理动态占位符实现
    通过ThreadPoolExecutor源码分析线程池实现原理
    jdk8函数接口
    Logback源码分析
    Spring注解Component原理源码解析
    ApplicationListener原理分析
  • 原文地址:https://www.cnblogs.com/25miao/p/7126485.html
Copyright © 2011-2022 走看看