问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

java HttpPost怎么传递参数

发布网友 发布时间:2022-04-21 18:17

我来回答

6个回答

懂视网 时间:2022-04-21 01:34

http post http 通过post传输参数

打开一个服务端的网页,需要传一些参数,要求以post方式传输参数?怎么弄

系统通过打开一个链接的方式打开其它服务器的某个查询页面,而这个查询页面需要传一些参数


而人家的文档中说是要求以post的方式传输参数?我就郁闷了,这种情况下如何以post的方式传输参数呢,我只是打开页面,又不是做什么提交

一般get方式打开:http://www.hao123.com? id = "123"

那以post的方式打开,如何弄呢,我们想做的是 在前台通过一个链接打开这个服务器端的网页

是不是人家要求错了?如果人家要求没错,怎么弄呢


回复讨论(解决方案)

哪位指指点下不?

求指导!!!!!!!!!!!!!!!!!!!

这个通常在后台程序处理,socket或者curl之类都可以

如果前台做,就整个空页面,ajax post然后取回数据再刷新页面

用js模拟一个click

热心网友 时间:2022-04-20 22:42

public class HttpURLConnectionPost {

/**

* @param args

* @throws IOException

*/

public static void main(String[] args) throws IOException {

readContentFromPost();

}

public static void readContentFromPost() throws IOException {

// Post请求的url,与get不同的是不需要带参数

URL postUrl = new URL("http://www.xxxxxxx.com");

// 打开连接

HttpURLConnection connection = (HttpURLConnection) postUrl.openConnection();     

// 设置是否向connection输出,因为这个是post请求,参数要放在

// http正文内,因此需要设为true

connection.setDoOutput(true);

// Read from the connection. Default is true.

connection.setDoInput(true);

// 默认是 GET方式

connection.setRequestMethod("POST");      

// Post 请求不能使用缓存

connection.setUseCaches(false);  

//设置本次连接是否自动重定向 

connection.setInstanceFollowRedirects(true);      

// 配置本次连接的Content-type,配置为application/x-www-form-urlencoded的

// 意思是正文是urlencoded编码过的form参数

connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");

// 连接,从postUrl.openConnection()至此的配置必须要在connect之前完成,

// 要注意的是connection.getOutputStream会隐含的进行connect。

connection.connect();

DataOutputStream out = new DataOutputStream(connection

.getOutputStream());

// 正文,正文内容其实跟get的URL中 '? '后的参数字符串一致

String content = "字段名=" + URLEncoder.encode("字符串值", "编码");

// DataOutputStream.writeBytes将字符串中的16位的unicode字符以8位的字符形式写到流里面

out.writeBytes(content);

//流用完记得关

out.flush();

out.close();

//获取响应

BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));

String line;

while ((line = reader.readLine()) != null){

System.out.println(line);

}

reader.close();

//该干的都干完了,记得把连接断了

connection.disconnect();

}

扩展资料:

关于Java HttpURLConnection使用

public static String sendPostValidate(String serviceUrl, String postData, String userName, String password){

PrintWriter out = null;

BufferedReader in = null;

String result = "";

try {

log.info("POST接口地址:"+serviceUrl);

URL realUrl = new URL(serviceUrl);

// 打开和URL之间的连接

URLConnection conn = realUrl.openConnection();

HttpURLConnection httpUrlConnection = (HttpURLConnection) conn; 

// 设置通用的请求属性

httpUrlConnection.setRequestProperty("accept","*/*");

httpUrlConnection.setRequestProperty("connection", "Keep-Alive");

httpUrlConnection.setRequestProperty("user-agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");

httpUrlConnection.setRequestMethod("POST");

httpUrlConnection.setRequestProperty("Content-Type","application/json;charset=UTF-8");

Base64 base64 = new Base64();

String encoded = base64.encodeToString(new String(userName+ ":" +password).getBytes());

httpUrlConnection.setRequestProperty("Authorization", "Basic "+encoded);

// 发送POST请求必须设置如下两行

httpUrlConnection.setDoOutput(true);

httpUrlConnection.setDoInput(true);

// 获取URLConnection对象对应的输出流

out = new PrintWriter(new OutputStreamWriter(httpUrlConnection.getOutputStream(),"utf-8"));

// 发送请求参数

out.print(postData);

out.flush();

// 定义BufferedReader输入流来读取URL的响应

in = new BufferedReader(new InputStreamReader(httpUrlConnection.getInputStream(),"utf-8"));

String line;

while ((line = in.readLine()) != null) {

result += line;

}

//            

//            if (!"".equals(result)) {  

//                BASE64Decoder decoder = new BASE64Decoder();  

//                try {  

//                    byte[] b = decoder.decodeBuffer(result);  

//                    result = new String(b, "utf-8");  

//                } catch (Exception e) {  

//                    e.printStackTrace();  

//                }  

//            }

return result;

} catch (Exception e) {

log.info("调用异常",e);

throw new RuntimeException(e);

}

//使用finally块来关闭输出流、输入流

finally{

try{

if(out!=null){

out.close();

}

if(in!=null){

in.close();

}

}

catch(IOException e){

log.info("关闭流异常",e);

}

}

}

}

热心网友 时间:2022-04-21 00:00

这里有两种方法:

1、有时候考虑请求接口时,参数的形式是这样的:如"key1=value1&key2=value2"

这样http get和post的方法都可以用同样的结构来作为参数,于是http post的方法请求服务器数据时可以用这样的方法来实现。

2、new BasicNameValuePair(keys[i], values[i]),这里写参数。

扩展资料:

httpPost其实在服务端模拟浏览器向其它接口发送服务的,一般情况下和httpclient,或者jsonp联合使用,可以把它理解为浏览器就行了,里面封装了http协议的一些东西,所以要对http协议有一定的了解。

超文本传输协议(HTTP)的设计目的是保证客户机与服务器之间的通信。HTTP 的工作方式是客户机与服务器之间的请求-应答协议。web 浏览器可能是客户端,而计算机上的网络应用程序也可能作为服务器端。

在客户机和服务器之间进行请求-响应时,两种最常被用到的方法是:GET 和 POST。

GET - 从指定的资源请求数据。POST - 向指定的资源提交要被处理的数据。

热心网友 时间:2022-04-21 01:34

JAVA HttpURLConnection Post方式提交传递参数 的示例如下:

package wzq.j2se;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
public class HttpURLConnectionPost {
 /**
  * @param args
  * @throws IOException 
  */
 public static void main(String[] args) throws IOException {
  readContentFromPost();
 }
 public static void readContentFromPost() throws IOException {
        // Post请求的url,与get不同的是不需要带参数
        URL postUrl = new URL("http://www.wangqiang87.cn");
        // 打开连接
        HttpURLConnection connection = (HttpURLConnection) postUrl.openConnection();
      
        // 设置是否向connection输出,因为这个是post请求,参数要放在
        // http正文内,因此需要设为true
        connection.setDoOutput(true);
        // Read from the connection. Default is true.
        connection.setDoInput(true);
        // 默认是 GET方式
        connection.setRequestMethod("POST");
       
        // Post 请求不能使用缓存
        connection.setUseCaches(false);
       
        connection.setInstanceFollowRedirects(true);
       
        // 配置本次连接的Content-type,配置为application/x-www-form-urlencoded的
        // 意思是正文是urlencoded编码过的form参数,下面我们可以看到我们对正文内容使用URLEncoder.encode
        // 进行编码
        connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
        // 连接,从postUrl.openConnection()至此的配置必须要在connect之前完成,
        // 要注意的是connection.getOutputStream会隐含的进行connect。
        connection.connect();
        DataOutputStream out = new DataOutputStream(connection
                .getOutputStream());
        // The URL-encoded contend
        // 正文,正文内容其实跟get的URL中 '? '后的参数字符串一致
        String content = "account=" + URLEncoder.encode("一个大肥人", "UTF-8");
        content +="&pswd="+URLEncoder.encode("两个个大肥人", "UTF-8");;
        // DataOutputStream.writeBytes将字符串中的16位的unicode字符以8位的字符形式写到流里面
        out.writeBytes(content);
        out.flush();
        out.close(); 
        
        BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
        String line;
        
        while ((line = reader.readLine()) != null){
            System.out.println(line);
        }
      
        reader.close();
        connection.disconnect();
}
}

热心网友 时间:2022-04-21 03:26

/**
* 获取请求参数键值对数组 </p>
*
* @param request
* HttpServletRequest对象
* @return HashMap<String,String> 分请求参数键值对数组
* @throws UnsupportedEncodingException
*/
private HashMap<String, String> parseReqParam(HttpServletRequest request) {
// 取消对请求串的UTF-8编码,防止不同浏览器中发送请求时进行默认编码处理导致的转码失败
String reqParamStr = request.getQueryString();
// 请求参数为空
if (reqParamStr == null || reqParamStr.isEmpty()) {
return null;
}
HashMap<String, String> paramList = new HashMap<String, String>();
// 将各组键值对取出
String[] queryParam = reqParamStr.split("&");
int length = queryParam.length;
// 将键值对保存
for (int i = 0; i < length; i++) {
String param = queryParam[i];
int index = param.indexOf("=");
// 存在键值对的话
if (index != -1) {
String paramKey = param.substring(0, index);
String paramValue = param.substring(index + 1, param.length());
paramList.put(paramKey.toUpperCase(), paramValue); // key转换成大写保存
}
}// end for... KVP in queryParam
return paramList;
}

热心网友 时间:2022-04-21 05:34

这种是简单的 www.aaa.com/index.jsp?a=b&c=d传参
//serverURL url地址
HttpPost httpPost = new HttpPost(serverURL);
//param 为参数
StringEntity entity = new StringEntity(param);
entity.setContentType("application/x-www-form-urlencoded");
httpPost.setEntity(entity);
HttpResponse httpResponse = httpClient.execute(httpPost);

还可以用map作为参数
List<NameValuePair> formparams = new ArrayList<NameValuePair>();
if(param!=null){
Set set = param.keySet();
Iterator iterator = set.iterator();
while (iterator.hasNext()) {
Object key = iterator.next();
Object value = param.get(key);
formparams.add(new BasicNameValuePair(key.toString(), value.toString()));
}
}
java HttpPost怎么传递参数

1、有时候考虑请求接口时,参数的形式是这样的:如"key1=value1&amp;key2=value2"这样http get和post的方法都可以用同样的结构来作为参数,于是http post的方法请求服务器数据时可以用这样的方法来实现。2、new BasicNameValuePair(keys[i], values[i]),这里写参数。

java HttpPost怎么传递参数

public static void main(String[] args) throws IOException { readContentFromPost();} public static void readContentFromPost() throws IOException { // Post请求的url,与get不同的是不需要带参数 URL postUrl = new URL("http://www.xxxxxxx.com");// 打开连接 HttpURLConnection connection...

java怎么post请求同时发送二进制文件和json数据?

在Java中,若需以POST方式同时发送二进制文件和JSON数据,首先需调整HTTP请求的Content-Type请求头至“multipart/form-data”。同时,需设置Content-Disposition头以明确文件与数据的属性。具体操作如下:1. 初始化一个`MultipartEntity`对象,用于封装请求体中的多部分数据。java MultipartEntityBuilder entityBu...

java中,如何用POST方法将参数传递给第三方网站

super();} public static void main(String[] args) throws Exception { HttpClient client = new HttpClient();client.getHostConfiguration().setHost(LOGON_SITE, LOGON_PORT, "http");PostMethod authpost = new PostMethod("/servlet/SessionServlet");// 准备登录参数 NameValuePair action ...

java调用http接口时怎么传入整型

1、通过将整型变量intValue转换为字符串,并将其附加到URL的查询字符串中,从而将整型数据作为URL参数传递给HTTP接口。2、使用HttpURLConnection类创建了一个HTTP连接,并使用POST方法向HTTP接口发送请求。将整型变量intValue转换为JSON字符串,并将其作为请求体发送给HTTP接口,即可。

java http post 同时发送文件流与数据

= -1){ System.out.println(new String(b,0,len)); } 上面如图的代码,我们发现发送过来的表单数据跟文件数据是混乱的,我们根本没办法解析(很麻烦),这个时候我们就需要用到第三方辅助(apache 提供的fileupload.jar)来进行获取。这个网上有很多代码的,如果有什么不明白可以去自行百度,或...

java 接口调用,根据接口文档写测试,用post方法,刚怎么做啊,有个完整...

2. POST方式 方式传递参数 //和GET方式一样,先将参数放入List params = new LinkedList&lt;BasicNameValuePair&gt;();params.add(new BasicNameValuePair("param1", "Post方法"));//增加参数1 params.add(new BasicNameValuePair("param2", "第二个参数"));//增加参数2 try { HttpPost postMethod = ...

JAVA 怎么实现HTTP的POST方式通讯,以及HTTPS方式传递

/** * 执行post请求并将返回内容转为json格式返回 */public static JsonObject doPost(String url, JsonObject message)throws WeiXinException {JsonObject jo = null;PrintWriter out = null;InputStream in = null;try {if (url.startsWith("https")){//https方式提交需要SSLContext sc = SSL...

HttpPost发送字符串到服务器,服务器接收代码并显示怎么写Java代码?

--和上面的name需要一样--&gt; &lt;url-pattern&gt;/*&lt;/url-pattern&gt;&lt;!--什么类型的客户端请求会被拦截,/* 就是全拦截了--&gt;&lt;/servlet-mapping&gt;然后再服务器端的类文件,要实现 HttpServlet这个接口。并把doGet()方法和doPost()方法重写。这两种方法分别对应的是客户端的get请求和post请求的处理,你...

java 实现http post multipart/form-data 怎么实现,多

Eclipse for j2EE developer 自带了一个 TCP / IP Monitor,在里面创建一个端口转发器,比如监听在 9090,然后转发到 localhost:8080 上去,再启动它。然后我们打开浏览器访问 9090 端口,上传一个小尺寸的文件(比如几十K,最好是纯文本的),这个过程中我们可以在 TCP/IP Monitor 窗口中观察它的内容...

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
梯子约读会员服务商有哪些优势? 夫妻人身关系包括什么内容,离婚对夫妻人身关 老公在外面有女人,我该怎样处理? 前端专题:Form表单详解 2014年广西西林县事业单位招聘考试专业限制 老公在外面有女人我该怎么办 布老大网站简介 女方陪嫁财产是否属于夫妻共同财产 怎么能看出老公外面有人了 ...所以他每晚回家都会问一句干嘛去了?可他的回答全是谎话,这是_百度... android post请求url是否有参数拼接 post,参数放在ulr和放在body的区别 Http的post请求资源路径中可以加参数吗 form表单采用post提交方式提交,在url后面加问号再... .net有把参数写到url上的POST请求吗? post提交url能不能带参数 post 请求可不可以在url中加参数,可以 华为电脑指纹无法识别,怎么办? 华为荣耀4x无法连接电脑,显示无法识别的usb设备 华为p8手机连接电脑无法识别怎么办 电脑不识别华为手机是怎么回事 华为电脑指纹无法识别开不了机? 华为手机连接电脑无法识别usb设备怎么办? 为什么电脑读不了华为手机里面的卡 华为手机链接电脑无法识别是怎么回事? 华为联通定制3G手机U1300,数据线连接电脑,无法显... 华为手机usB调试电脑不能识别设备,为什么 华为荣耀6连接电脑,电脑显示无法识别怎么办 如何修改注册表使更改IP地址时须启动 跨境电商多账号操作网络ip关联怎么办? Java sendPost请求方法如何加入参数? 为什么ajax用post提交,地址栏依然会有参数? iOS中如何发起这样的post请求:URL类似于get请求(... 在地址栏中如何以Post提交数据 HttpWebRequest发送post请求时有多个参数如何处理 2021年五行属什么? 2021年五行属什么,缺什么 为何说2021年五一档是史上最拥挤的五一档? 2021年五角纸币停止流通了吗? 2021年5月黄道吉日 2021年五行属什么 2021年5月新规来了,都有哪些新规? 2021年5月有多少天? 2021五行属什么年 今年五一几天假?(2021) 2021年五一连续放5天假,具体是怎样调休的? 2021年5月有新规将实施,具体有哪些新规? 2021年五月份有什么电影上映? 2021年一二三四五线城市名单内容是什么? 2021年5月21日星期五,2821年9月1日星期几?
  • 焦点

最新推荐

猜你喜欢

热门推荐