如何在java中发送Https Post请求 [英] How to send Https Post request in java
本文介绍了如何在java中发送Https Post请求的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想从java代码登录应用程序。
这是我的代码......
I want to login to application from java code. Here is my code...
String httpsURL = "https://www.abcd.com/auth/login/";
String query = "email="+URLEncoder.encode("abc@xyz.com","UTF-8");
query += "&";
query += "password="+URLEncoder.encode("abcd","UTF-8") ;
URL myurl = new URL(httpsURL);
HttpsURLConnection con = (HttpsURLConnection)myurl.openConnection();
con.setRequestMethod("POST");
con.setRequestProperty("Content-length", String.valueOf(query.length()));
con.setRequestProperty("Content-Type","application/x-www- form-urlencoded");
con.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0;Windows98;DigExt)");
con.setDoOutput(true);
con.setDoInput(true);
DataOutputStream output = new DataOutputStream(con.getOutputStream());
output.writeBytes(query);
output.close();
DataInputStream input = new DataInputStream( con.getInputStream() );
for( int c = input.read(); c != -1; c = input.read() )
System.out.print( (char)c );
input.close();
System.out.println("Resp Code:"+con .getResponseCode());
System.out.println("Resp Message:"+ con .getResponseMessage());
但我无法登录,只返回登录页面。
but i can not login, it returns back only login page.
如果有人可以,请帮助我理解我做错了什么。
If anybody can, please help me to understand what am i doing wrong.
推荐答案
错误: - (在 www- form 中间有额外的空间)
Wrong :- (Extra space is there in mid of www- form)
con.setRequestProperty("Content-Type","application/x-www- form-urlencoded");
正确
con.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
这篇关于如何在java中发送Https Post请求的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文