当前位置: 首页 > 知识库问答 >
问题:

jsoup发布Java

龙志勇
2023-03-14

Im很难通过HTTPS获得java提交POST请求

     try{
        Response res = Jsoup.connect(LOGIN_URL)
    .data("username", "blah", "password", "blah")

    .method(Method.POST)
  .userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:19.0) Gecko/20100101 Firefox/19.0")
                .header("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")
                .execute();
        System.out.println(res.body());
        System.out.println("Code " +res.statusCode());

        }
        catch (Exception e){
            System.out.println(e.getMessage()); 
        }
Document doc = Jsoup.connect(LOGIN_URL)
  .data("username", "blah")
  .data("password", "blah")
  .userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:19.0) Gecko/20100101 Firefox/19.0")
        .header("Content-type", "application/x-www-form-urlencoded")
         .method(Method.POST)
  .timeout(3000)
  .post();
            

编辑:

当服务器通过HTTPS获得一个POST时,似乎涉及到302重定向(这在http上不会发生),我如何使用jsoup存储与302一起发送到下一页的cookie呢?

共有1个答案

单于季
2023-03-14

这是我的代码:

URL form = new URL(Your_url);
connection1 = (HttpURLConnection)form.openConnection();
connection1.setRequestProperty("Cookie", your_cookie);

connection1.setReadTimeout(10000);
StringBuilder whole = new StringBuilder();

BufferedReader in = new BufferedReader(
        new InputStreamReader(new BufferedInputStream(connection1.getInputStream())));
String inputLine;
while ((inputLine = in.readLine()) != null)
     whole.append(inputLine);
     in.close();
Document doc = Jsoup.parse(whole.toString());
String title = doc.title();

我已经使用这段代码来获取新页面的标题。

 类似资料:
  • 问题内容: 我使用JSoup使用以下代码发布值: 现在我也要提交文件。就像带有文件字段的表单一样。这可能吗 ?如果比怎么? 问题答案: 从Jsoup 1.8.2(2015年4月13日)开始,通过新方法才支持此功能。 在旧版本中,不支持发送请求。最好的选择是为此使用一个值得使用的HTTP客户端,例如Apache HttpComponents Client 。最终,您可以获得HTTP客户端响应,以便可

  • 问题内容: 我正在尝试将数据发布到网站中,以使用Jsoup登录该网站,但是它不起作用? 我正在尝试代码 这是在pagesource中提供正常的登录页面 我也尝试过代码 这也是在pagesource中再次提供正常的登录页面。 关于相同的任何建议将不胜感激! 谢谢.... 问题答案: 我将通过举例来回答您的问题。假设您要登录到facebook。 然后,除了用户名和密码外,还有许多其他参数也通过请求传递

  • 我让这个类来检查playsore中是否有可用的更新,它使用了,所有的东西都在上,但是当我上传版本时,它会崩溃,我真的不知道是什么问题。有人能帮我吗? 致命的例外:java。lang.RuntimeException:在android上执行doInBackground()时出错。操作系统。3美元。在java上完成(AsyncTask.java:365)。util。同时发生的未来任务。在java完成(

  • 问题内容: 我有以下代码,可用于以编程方式登录网站。但是,它不返回登录页面的html(带有用户数据信息),而是返回登录页面的html。我试图多次查找出问题所在,但似乎找不到。 [注意]登录表单中有一行: 但这没有“名称”属性,因此我没有发布 任何答案/评论表示赞赏! [UPDATE2]对于登录页面,浏览器显示以下内容… 问题答案: 您必须分两个阶段登录该站点。 第1阶段-您向该URL 发送请求-

  • 从1.14.0开始支持预发布、灰度发布,可登陆SOP-Admin,然后选择服务列表进行操作。 使用预发布 SOP中预发布的思路如下: 假设网关工程sop-gateway在阿里云负载均衡有两台服务器,域名分别为: 域名 说明 open1.domain.com 网关服务器1 openpre.domain.com 网关服务器2,作为预发布请求入口 SLB对外域名为:open.domain.com,即开放

  • 现在我们已经按照指南里的步骤写好一个声明文件,是时候把它发布到npm了。 有两种主要方式用来发布声明文件到npm: 与你的npm包捆绑在一起,或 发布到npm上的@types organization。 如果你能控制要使用你发布的声明文件的那个npm包的话,推荐第一种方式。 这样的话,你的声明文件与JavaScript总是在一起传递。 如果你的包有一个主.js文件,你还是需要在package.js