ios - Swift webview xcode 发布数据

标签 ios swift

我有一个当前编码如下的 webview:

    let url = NSURL(string: "http://example.com")
    let request = NSURLRequest(URL: url!)

    monitorView.loadRequest(request)

这工作得很好,但是当涉及到向该 url 发布数据然后加载它时,我将如何处理?我是 swift 的新手,似乎无法弄清楚这一点。

最佳答案

你可以使用像 NSURLSession 这样的类,它允许控制你的 HTTP 交互,并在你的 webView 中加载 HTML 字符串

使用示例:

let request = NSMutableURLRequest(URL: NSURL(string: "http://www.someLink.com/postName.php"))
request.HTTPMethod = "POST"
let postString = "id=XYZ"
request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding)
let task = NSURLSession.sharedSession().dataTaskWithRequest(request) {
    data, response, error in

    if error != nil {
        println("error=\(error)")
        return
    }

    println("response = \(response)")

    let responseString = NSString(data: data, encoding: NSUTF8StringEncoding)
    println("responseString = \(responseString)")
}
task.resume()

或者您可以准备一个带有 POST 正文的 NSMutableURLRequest 并将其加载到您的 webView 中,如下所示:

//need to use MutableRequest to set HTTPMethod to Post.
var url = NSURL(string: "http://www.somesite.com/post.php")
var request = NSMutableURLRequest(URL: url!)
request.HTTPMethod = "POST"
var bodyData: String = "someUsernameOrKey"
request.HTTPBody = bodyData.dataUsingEncoding(NSUTF8StringEncoding)
webView.loadRequest(request)

关于ios - Swift webview xcode 发布数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32482442/

相关文章:

ios - 谁能告诉我为什么我在执行此代码(Swift)时收到错误的身份验证错误?

iphone - 将App Store嵌入我的应用程序

swift - JSQ 消息-Swift 3 "didPressSendButton"

ios - 检查是否在核心数据中设置了属性?

ios - 意外的大量存储使用

ios - xCode 6.2 项目不会使用 xCode 6.3 和 Swift 1.2 存档(swiftc 失败,退出代码为 1)

ios - 如何在PDFView中呈现单页pdf文档,使文档居中完整呈现?

swift - Xcode 7 Swift 2 错误 : Thread 1: EXC_BAD_INSTRUCTION (code=EXC_1386_INVOP, SUBCODE=0X0)

swift - bar Items 中的导航链接返回到 NavigationView 的顶部

ios - 在 Mapbox 的导航 View 上添加自定义按钮