我在演示中为我的webview设置自定义用户代理时遇到问题我只是想将其设置为我的Safari用户代理。在基于swift的osx cocoa应用程序中找到如何执行此操作的示例似乎非常困难。
这是我的代码:
import Cocoa
import WebKit
class ViewController: NSViewController {
@IBOutlet weak var webView: WebView!
@IBOutlet weak var progressIndicator: NSProgressIndicator!
override func viewDidAppear() {
super.viewDidAppear()
self.view.window?.titleVisibility = .Hidden
self.view.window?.titlebarAppearsTransparent = true
self.view.window?.styleMask |= NSFullSizeContentViewWindowMask
let urlString = NSURL(string: "http://whatsmyuseragent.com")
NSUserDefaults.standardUserDefaults().registerDefaults(["UserAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_4) AppleWebKit/600.7.12 (KHTML, like Gecko) Version/8.0.7 Safari/600.7.12"])
self.webView.mainFrame.loadRequest(NSMutableURLRequest(URL: urlString!))
}
override var representedObject: AnyObject? {
didSet {
// Update the view, if already loaded.
}
}
override func webView(sender: WebView!, didStartProvisionalLoadForFrame frame: WebFrame!) {
self.progressIndicator.startAnimation(self)
}
override func webView(sender: WebView!, didFinishLoadForFrame frame: WebFrame!) {
self.progressIndicator.stopAnimation(self)
}
override func mouseEntered(event: NSEvent) {
}
}
此外,我看到UIWebView iOS5 changing user-agent给出的代码示例似乎没有做任何事情和/或我把它放在错误的地方。我有两个文件“AppDelegate.swift”和“ViewController.swift”我已经在两个文件中的各个地方尝试了代码无济于事。
谢谢!