如何在 jsoup 连接中发送数据? [英] How to send data in jsoup connection?

查看:28
本文介绍了如何在 jsoup 连接中发送数据?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要在 jsoup 连接请求中发送数据.这是我在 chrome 开发者控制台中可以看到的表单数据.

I need to send data in jsoup connection request. This is the Form Data that I can see in chrome developer console.

{"method":"Catalog.search","params":{"pag":1,"business_url":"electrodomesticos","category_url":"climatizacion","subcategory_url":"","valmin":-1,"valmax":-1}}

这是我的代码

    String phpUrl = "url of .php";
    Connection conn = Jsoup.connect(phpUrl).userAgent("Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36").referrer(referer).maxBodySize(0).timeout(Main.TIMEOUT);

    Map  <String,String>  myMap= new HashMap <String, String>();
    myMap.put("method", "Catalog.search");
    //myMap.put("params", "{}");
    myMap.put("pag", "1");
    myMap.put("business_url", "electrodomesticos");
    myMap.put("category_url", "climatizacion" );
    myMap.put("subcategory_url", "" );
    myMap.put("valmin", "-1" );
    myMap.put("valmax", "-1");
    conn.data(myMap);
    conn.post();
    Connection.Response respon = conn.execute();

我尝试了更多组合,但我得到了 http 500 错误.我知道我的语法是错误的.所以请有人告诉我发送该数据的正确语法.

I tried few more combinations but I aways get http 500 error. I know that my syntax is wrong. So please can somebody tell me the right syntax to send that data.

推荐答案

试试这个:

 String[] POST_DATA = new String[]{KEY, VALUE, KEY2, VALUE2}; 
    Response response = Jsoup.connect(URL)
    .data(POST_DATA )
    .method(Connection.Method.POST)
    .execute;

参考:https://jsoup.org/apidocs/org/jsoup/Connection.html#requestBody-java.lang.String-

这篇关于如何在 jsoup 连接中发送数据?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆