android發送post請求


//ps:此函數必須在線程中調用(因為函數拋出異常,調用時要包在try--catch里面)
private void start_run() throws Exception{
        String urlPath = new String("http://hnzldzkj.cn/readkey");
        //String urlPath = new String("http://localhost:8080/Test1/HelloWorld?name=丁丁".getBytes("UTF-8"));
        String param="name="+URLEncoder.encode("丁丁","UTF-8");
        //建立連接
        URL url=new URL(urlPath);
        HttpURLConnection httpConn=(HttpURLConnection)url.openConnection();
        //設置參數
        httpConn.setDoOutput(true);     //需要輸出
        httpConn.setDoInput(true);      //需要輸入
        httpConn.setUseCaches(false);   //不允許緩存
        httpConn.setRequestMethod("POST");      //設置POST方式連接
        //設置請求屬性
        httpConn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
        httpConn.setRequestProperty("Connection", "Keep-Alive");// 維持長連接
        httpConn.setRequestProperty("Charset", "UTF-8");
        //連接,也可以不用明文connect,使用下面的httpConn.getOutputStream()會自動connect
        httpConn.connect();
        //建立輸入流,向指向的URL傳入參數
        DataOutputStream dos=new DataOutputStream(httpConn.getOutputStream());
        dos.writeBytes(param);
        dos.flush();
        dos.close();
        //獲得響應狀態
        int resultCode=httpConn.getResponseCode();
        if(HttpURLConnection.HTTP_OK==resultCode){
            StringBuffer sb=new StringBuffer();
            String readLine=new String();
            BufferedReader responseReader=new BufferedReader(new InputStreamReader(httpConn.getInputStream(),"UTF-8"));
            while((readLine=responseReader.readLine())!=null){
                sb.append(readLine).append("\n");
            }
            responseReader.close();
            System.out.println(sb.toString());
        }
    }
View Code

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM