0

我正在 webview 上加载一个 url,用户必须在其中登录。我通过以下方式提出请求:

    let urlStr = "https://flex-showcase.bloxcms.com/business/guebert-food-and-family-a-must-for-sundays-in-april/article_94462124-fbd4-5d0b-9841-880d82844c05.html"
    var req = URLRequest(url: URL(string: urlStr)!)
    req.addValue("1", forHTTPHeaderField: "X-Townnews-Now-API-Version")
    let appdelegate =  UIApplication.shared.delegate as! AppDelegate
    let userAgent = appdelegate.appUserAgent
    appdelegate.webviewObj.customUserAgent = userAgent
    appdelegate.webviewObj.load(req)

登录后,我们看到用户会话没有正确维护。正如我们所见,登录后所有 HTTP 事务上的“ X-Townnews-Now-API-Version ”都丢失了。我还观察到:

1)再次重新加载网页后,每个想法都可以正常工作。2)后端还调试了“登录按钮在做XHR,点击登录按钮应该对HTTP请求没有影响。HTTP请求需要在webkit级别拦截,并在所有HTTP事务上传递正确的标头。

4

0 回答 0