【问题标题】:Get HTTP headers on WebKit.NET在 WebKit.NET 上获取 HTTP 标头
【发布时间】:2012-05-05 04:51:42
【问题描述】:

我一直试图弄清楚如何处理 WebKit.NET 上的 401 响应并显示一个身份验证框,以便用户可以输入他的凭据,然后将它们发送回服务器。

This guy 想出了一种将正确的标头添加到新请求并将它们发送到服务器的方法,但似乎代码将它们发送到浏览器导航到的每个页面,这不是我想要的。我对代码进行了一些研究,有一个名为IWebResourceLoadDelegate 的接口,其中包含两个名为didReceiveResponsedidReceiveContentLength 的事件处理程序,每个响应都会调用它们,但无法弄清楚到底如何从传递的参数中读取标头。我认为标题根本没有被传递。

另外,web kit sharp 的人似乎也没有解决这个问题,但不知何故 Chrome 确实可以正确处理它。我不确定 WebKit Chrome 使用的是哪个版本。我只是希望不是自定义构建,这样我就别无选择,只能用余生尝试构建 WebKit(其余时间尝试添加缺少的功能)。

任何人都知道我该如何开始弄清楚如何处理这个问题?

【问题讨论】:

    标签: c# .net http webkit webkit.net


    【解决方案1】:

    我已经有一段时间没有从事这个项目了,但在我看来,您应该能够从 WebURLResponse 对象中获取请求标头,可能来自 allHeaderFields 或 statusCode 方法...

    如果您能完成我的工作以在 WebKit.NET 中获得完整的 HTTP Auth 支持,那就太好了。我只是没有时间...... Chrome 和 Safari 有自己的专有实现可以解决问题。

    【讨论】:

    • 这很奇怪。 IWebURLResponse接口(这是WebKit.NET使用的WebKit中WebURLResponse类实现的唯一接口)没有读取header的方法,但是trunk中的WebURLResponse也实现了IWebHTTPURLResponse,它确实有读取标题的方法。他们可以使用旧版本的 WebKit 吗?或者这是 Apple - Windows 的问题。
    • 我链接到的代码是一个 webkit for windows 文件,只要该文件在源代码管理中(3 年),这些方法就已经存在。我知道 WebKit.NET 在 WebKit Source 上落后了,但我认为它并没有落后那么远……
    猜你喜欢
    • 2016-04-25
    • 2011-02-03
    • 1970-01-01
    • 2012-10-25
    • 1970-01-01
    • 1970-01-01
    • 2021-10-21
    • 2013-12-11
    • 2016-03-11
    相关资源
    最近更新 更多