【问题标题】:Java / .NET spawn browser with cookie setJava / .NET 生成带有 cookie 集的浏览器
【发布时间】:2010-06-21 18:39:12
【问题描述】:

我可以使用 java.awt.Desktop 从我的 Java 胖客户端生成浏览器。

显然,我还可以使用 System.Diagnostics.Process.Start 从我的 .NET 客户端生成浏览器

我的问题是,Java / .NET 中是否有办法在生成浏览器进程时设置 cookie?看起来没有 - 可能是出于安全考虑?

【问题讨论】:

    标签: java .net desktop-application


    【解决方案1】:

    没有。您可能可以在目标浏览器中添加某种插件,但这将使用不同的机制。

    java.awt.Desktop 的作用是启动浏览器。与它没有更多的交互。

    【讨论】:

      【解决方案2】:

      我最终做的是生成一个中间页面,例如:

      Desktop.getDesktop().browse(
          new URI("http://localhost/intermediate.html?mytoken=bar")
      );
      

      然后有一点 JavaScript 来获取请求参数,将其设置为 cookie,然后转发到目标页面。

      var query = location.search;
      var tokenRe = /mytoken=([^?]*)/;
      var token = query.match(tokenRe)[1];
      document.cookie = 'MYTOKEN=' + token
      location.replace('http://localhost/destination')
      

      简单!

      【讨论】:

        猜你喜欢
        • 2019-11-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-30
        • 2020-04-07
        • 1970-01-01
        相关资源
        最近更新 更多