【问题标题】:The procedure of Opening a website using IE8使用IE8打开网站的流程
【发布时间】:2012-11-10 21:56:44
【问题描述】:

我想知道当我用IE8打开一个网站(比如www.yahoo.com)时,IE8会调用哪个API?所以我可以挂钩这些 API 来捕获 IE8 当前打开的网站。

【问题讨论】:

    标签: c++ c sdk


    【解决方案1】:

    当您在浏览器中输入 URL 时,浏览器(通常)会向该 URL 标识的服务器发出 HTTP 请求。要发出请求,需要服务器的 IP 地址,该地址是通过 DNS 查找主机(域名)名称获得的。

    一旦收到响应(通常包含 HTML 标记),浏览器就会呈现它以显示网页。

    更多详情请点击此处:what happens when you type in a URL in browser

    因此,在一般情况下,不会发出这样的“API”请求。 (从技术上讲,您可以将对服务器的原始 HTTP 请求视为 API 请求)。但是,您可能指的那种“API”请求并不是在刚刚描述的这种一般情况下提出的。这些请求发生在页面上执行的 JavaScript 向 Web 服务器发出 Ajax HTTP 请求 (XmlHttpRequest) 以执行某些操作时。

    我不确定 IE8,但大多数现代浏览器(包括 IE9 和 IE10)的“开发人员工具”功能可以让您看到网页在执行不同操作时发出的 Ajax HTTP 请求。

    希望这会有所帮助。

    【讨论】:

    • 谢谢,但是如果你想向远程服务器发送请求,你必须调用API(可能像socket send API)来完成这个请求,对。
    • 是的。浏览器将使用操作系统提供的 Socket API 来执行此操作。如果您使用的是 IE/Windows,这将是 Winsock API。你可以用谷歌搜索更多细节。
    【解决方案2】:

    IE 使用 Microsoft 的 WinSock 库 API 与 Web 服务器交互。

    您可能想要寻找一个网络监控/嗅探 API,您可以使用它来检查 HTTP 请求,并确定浏览器正在使用的 URL。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-10-22
      • 2016-10-06
      • 2020-01-06
      • 2012-05-08
      • 1970-01-01
      • 2016-07-11
      • 1970-01-01
      相关资源
      最近更新 更多