2014-02-26 2 views
0

기본적으로 내가 정의하고 싶은 POST 변수가있는 PHP 페이지의 텍스트 응답을 얻고 싶습니다.간단한 POST 요청/응답 방법은 무엇입니까?

URL에 일부 POST 데이터 (예 : "arg1 = this & arg2 = that")를 보내고 응답 (헤더가 아닌 내용)을 문자열로 처리하는 가장 쉬운 방법은 무엇입니까?

+0

자세한 내용은? 또는 언어 –

+0

정확히 무엇을 의미합니까? Eclipse와 Java 7을 사용하고 있습니다. – Zapk

+0

http://www.mkyong.com/java/how-to-send-http-request-getpost-in-java/ – Leo

답변

1

HttpUrlConnection을 사용하여 java를 사용하여 게시물 요청을 보냅니다. 모든 매개 변수를 첨부하고 test.php에서 응답을 준비하고 보낸 사람에게 다시 돌아옵니다.

 import java.io.BufferedReader; 
     import java.io.DataOutputStream; 
     import java.io.InputStreamReader; 
     import java.net.HttpURLConnection; 
     import java.net.URL; 


     private void sendPost() throws Exception 
     { 

       String url = "http://example.com/test.php"; 
       URL obj = new URL(url); 
       HttpURLConnection con = (HttpURLConnection) obj.openConnection(); 

       //add reuqest header 
       con.setRequestMethod("POST"); 
       con.setRequestProperty("User-Agent", "Mozilla/5.0";); 
       con.setRequestProperty("Accept-Language", "en-US,en;q=0.5"); 

       String urlParameters = "para1= xxx & para2=yy"; 

       // Send post request 
       con.setDoOutput(true); 
       DataOutputStream wr = new DataOutputStream(con.getOutputStream()); 
       wr.writeBytes(urlParameters); 
       wr.flush(); 
       wr.close(); 

       int responseCode = con.getResponseCode(); 
       if(responseCode == HTTP_OK) 
       { 
       System.out.println("\nSending 'POST' request to URL : " + url); 
       System.out.println("Post parameters : " + urlParameters); 
       System.out.println("Response Code : " + responseCode); 

       BufferedReader in = new BufferedReader(
         new InputStreamReader(con.getInputStream())); 
       String inputLine; 
       StringBuffer response = new StringBuffer(); 

       while ((inputLine = in.readLine()) != null) { 
        response.append(inputLine); 
       } 
       in.close(); 

       //print result 
       System.out.println(response.toString()); 
        } 
       } 
관련 문제