我有一个基于Web的应用程序,它使用Cocoa / CocoaTouch的UIWebView。我想(需要?)强制所有HTTP连接到HTTPS。请注意,我有兴趣将初始登录URL强制为HTTPS,并将所有中间提取强制转换为HTTPS。动机:New Tricks for Defeating SSL in Practice和sslstrip。
是否可以将WebView配置为仅使用HTTPS? UIWebView documentation甚至没有提到HTTPS。考虑到Apple不允许我disable JavaScript in a UIWebView,我怀疑我可以在视图上进行配置更改。
或者答案是在NSURLRequest
,NSURLConnection
的某处,还是可能是委托方法?我看了URL Loading System Overview,但我看不到我能在哪里更改请求。
答案 0 :(得分:1)
如果您想更改请求,您可以代理UIWebView,以便拦截所有请求,然后用https替换http,并从代理发出请求。执行此操作的一种方法是子类化NSURLCache并覆盖方法cachedResponseForRequest。