微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Swift上传文件到PHP服务器

所以我将一个文件swift上传PHP服务器,POST请求按预期到达头文件,但我无法从$_FILES中获取任何内容.它只是一个空数组.

我在Swift方面显然做错了,这是我的代码

func testUpload(){
    let bundle = NSBundle.mainBundle()
    let path = bundle.pathForResource("someTestFile",ofType: "zip")!
    var data: NSData = NSData(contentsOfFile: path)!

    var request = NSMutableuRLRequest(URL: NSURL(string: "http://testsite.com/upload")!)
    request.HTTPMethod = "POST"

    let boundary = "----------ds2Gry67efddagdfsfhsHF"
    let contentType = "multipart/form-data; boundary=\(boundary)"
    request.setValue(contentType,forHTTPHeaderField:"Content-Type")
    request.setValue("Keep-Alive",forHTTPHeaderField: "Connection")
    self.uploadFiles(request,data: data)
}

func uploadFiles(request: NSURLRequest,data: NSData) {
    var configuration = NSURLSessionConfiguration.defaultSessionConfiguration()
    var session = NSURLSession(configuration: configuration,delegate: self,delegateQueue: NSOperationQueue.mainQueue())
    var task = session.uploadTaskWithRequest(request,fromData: data)
    task.resume()
}

我很确定我错过了一些东西,我只是想不通它是什么……

解决方法

POST方法,需要添加文件application / x-www-form-urlencoded

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐