Показаны сообщения с ярлыком post. Показать все сообщения
Показаны сообщения с ярлыком post. Показать все сообщения

вторник, 30 ноября 2010 г.

Как отправить POST-запрос в Python? / How to send POST request with Python?


#with httplib
import httplib
def printText(txt):
    lines = txt.split('\n')
    for line in lines:
        print line.strip()

httpServ = httplib.HTTPConnection("127.0.0.1"80)
httpServ.connect()

quote = "test"
httpServ.request('POST', '/cgi_form.cgi', 'name=Brad&quote=%s' % quote)

response = httpServ.getresponse()
if response.status == httplib.OK:
    print "Output from CGI request"
    printText (response.read())

httpServ.close()

Как отправить POST-запрос через HTTPS в Java?


try { 
     System.setProperty("java.protocol.handler.pkgs", "com.sun.net.ssl.internal.www.protocol");
    java.security.Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider()); 
    URL url = new URL("https://example.com"); 
    HttpsURLConnection connection = (HttpsURLConnection) url.openConnection();
    connection.setDoInput(true); 
    connection.setDoOutput(true);
    String cookieHeader = connection.getHeaderField("set-cookie"); 
    if(cookieHeader != null) { 
    int index = cookieHeader.indexOf(";"); 
    if(index >= 0) 
    cuki = cookieHeader.substring(0, index); 
    connection.setRequestProperty("Cookie", cuki); 
}
 
    connection.setRequestMethod("POST"); 
    connection.setFollowRedirects(true); 

String query = "user=" + URLEncoder.encode("gennad.zlobin@gmail.com"); 
query += "&"; 
query += "password=" + URLEncoder.encode("password"); 

//connection.setRequestProperty("Accept-Language","ru"); 
//connection.setRequestProperty("Accept", "application/cfm, image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png, //*/*"); 
//connection.setRequestProperty("Accept-Encoding","gzip"); 

connection.setRequestProperty("Content-length",String.valueOf (query.length())); 
connection.setRequestProperty("Content-Type","application/x-www- form-urlencoded"); 
connection.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)"); 

// open up the output stream of the connection 
DataOutputStream output = new DataOutputStream( connection.getOutputStream() ); 

// write out the data 
int queryLength = query.length(); 
output.writeBytes( query ); 
output.close();

System.out.println("Resp Code:"+connection.getResponseCode()); 
System.out.println("Resp Message:"+ connection.getResponseMessage()); 
// get ready to read the response from the cgi script 
DataInputStream input = new DataInputStream( connection.getInputStream() ); 

// read in each character until end-of-stream is detected 
for( int c = input.read(); c != -1; c = input.read() ) 
 System.out.print( (char)c ); 
input.close(); 
} 
catch(Exception e){ 
    System.out.println( e ); 
    e.printStackTrace(); 
} 

Как отправить POST-запрос в Java?


 String data = URLEncoder.encode("mydata", "UTF-8") + "=" + URLEncoder.encode("mydatavalue", "UTF-8");
data += "&" + URLEncoder.encode("mydata2", "UTF-8") + "=" + URLEncoder.encode("mydatavalue2", "UTF-8");
    try {        
         // Send the request
     URL url = new URL("http://example.com");
         URLConnection conn = url.openConnection();
         conn.setDoOutput(true);
         OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream());
         //write parameters
         writer.write(data);
         writer.flush();
         // Get the response
         StringBuffer answer = new StringBuffer();
         BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
         String line;
         while ((line = reader.readLine()) != null) {
             answer.append(line);
         }
         writer.close();
         reader.close();
    }
    catch (Exception e) {
        //handle exception
    }