【问题标题】:How to get XMLHTTPRequest files from external web page using Java?如何使用 Java 从外部网页获取 XMLHTTPRequest 文件?
【发布时间】:2020-08-02 03:05:39
【问题描述】:

我有一个 OPENTEXT REST API 的链接:[https://developer.opentext.com/webaccess/#url=%2Fawd%2Fresources%2Fapis%2Fcs-rest-api-for-cs-16-s&tab=501],我想获取这个 REST API 的 json 文件,所以我使用了这个链接 [https://developer.opentext.com/webaccess/#url=%2Fawd%2Fresources%2Fapis%2Fcs-rest-api-for-cs-16-s&tab=501/api-docs.json],我尝试使用 jsoup (因为这是一个网页),但它没有向我显示所需的内容,因为它使用了 并且它没有显示在主 HTML 代码中! 经过多次尝试,我发现这个 json 文件的主要 URL 是:[https://developer.opentext.com/awd/resources/apis/cs-rest-api-for-cs-16-s/api-docs.json],它是使用 XHR 调用到这个网页的(我使用 Google 开发工具计算出来的)。 现在我的问题是如何使用第一个 URL 获取这个 json 文件的主 URL。 请不要给我这个链接 [How to get XMLHTTPRequest response text of external web page using Java?,因为它不是我的需求

【问题讨论】:

  • XMLHTTPRequest 是 JavaScript。实际命名为 ECMAScript 的语言。 Java 是一种完全不相关的语言。所以我认为这是你的麻烦之一。您需要向我们展示您当前的代码。并确保你有正确的语言来做你想做的事。 apache-http* 组件是 Java。所以证据倾向于一种方式,但是你把 xmlhttprequest 扔在那里(那是 ECMAScript)....
  • @ElliottFrisch 看我编辑了这个问题。有什么方法可以获取 api-docs.json 文件吗?
  • 这是一个非常常见的事情(我认为)......他们实际上有很多答案。试试这个:Creating REST/JSON APIs 并注意使用的标准 java 类,因为他们已经这样做了很长时间了......这是另一个How to consume REST in Java - duplicate...注意“三巨头”BufferedReaderURLHttpURLConnection
  • NEXT 您可能需要 JSON 库。 (OR)您将不得不使用正则表达式...搜索可以解析您将从 REST 服务器接收的文本内容的 JSON。
  • 如果 that 不起作用,这里是Headless Browsers 的列表。我意识到这听起来可能很粗鲁或咄咄逼人。但我没有这样命名。这可能就是您正在寻找的东西(如果您想使用 xmlhttprequest 它必须是)。我已经这样做了很长时间。世界上有很多网络浏览器和网站。我并不声称知道所有这些。但我确实知道网络实际上是如何工作的。我很遗憾地说它就像汉堡包或香肠,大多数人可能更愿意知道。

标签: java xmlhttprequest


【解决方案1】:

您可以将此请求复制为 Curl,然后 -> 在 Java 中使用 Curl。这是我认为最简单但不是最好的方法。

【讨论】:

  • URL 包含很多个性化的会话标识符。该站点有一个 ReST API。整个网络抓取练习充满了第三方网站上的一次更改,破坏了一切。具有 ReST API 的第三方站点....
  • @ElliottFrisch 所以我认为使用 java 获取该文件是不可能的?
  • 有可能。向我们展示您的代码。告诉我们基本网址。根据您到目前为止所展示的内容,我必须从头开始编写所有内容才能为您提供解决方案。在花了一些时间弄清楚你想要做什么之后。你还没说呢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-21
  • 1970-01-01
  • 2012-10-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多