如何使用Swift将图像上传到iOS中的服务器?

它无法正常工作,如何将图像从iOS Swift应用发送到我的PHP服务器?


@IBAction func upload(sender: UIButton) {


    var imageData = UIImageJPEGRepresentation(img.image, 90)

   // println(imageData)

    let url = NSURL(string:"http://www.i35.club.tw/old_tree/test/uplo.php")

    //let cachePolicy = NSURLRequestCachePolicy.ReloadIgnoringLocalCacheData

    //var request = NSMutableURLRequest(URL: url, cachePolicy: cachePolicy, timeoutInterval: 10)

    var request = NSMutableURLRequest(URL: url)

    request.HTTPMethod = "POST"


    // set Content-Type in HTTP header

    let boundaryConstant = "----------V2ymHFg03esomerandomstuffhbqgZCaKO6jy";

    let contentType = "multipart/form-data; boundary=" + boundaryConstant

    NSURLProtocol.setProperty(contentType, forKey: "Content-Type", inRequest: request)

    request.HTTPBody = imageData

    // set data

    //var dataString = "adkjlkajfdadf"

    //let requestBodyData = (dataString as NSString).dataUsingEncoding(NSUTF8StringEncoding)

    //request.HTTPBody = requestBodyData



    //


    request.addValue(contentType, forHTTPHeaderField: "Content-Type")

    request.addValue("multipart/form-data", forHTTPHeaderField: "Accept")

    //

    // set content length


    //NSURLProtocol.setProperty(requestBodyData.length, forKey: "Content-Length", inRequest: request)


    var response: NSURLResponse? = nil

    var error: NSError? = nil

    let reply = NSURLConnection.sendSynchronousRequest(request, returningResponse:&response, error:&error)


    let results = NSString(data:reply!, encoding:NSUTF8StringEncoding)

    println("API Response: \(results)")

}


//take photo

func imagePickerController(picker: UIImagePickerController!, didFinishPickingImage image: UIImage!, editingInfo: NSDictionary!) {



    var selectedImage : UIImage = image

     img.image = selectedImage

    UIImageWriteToSavedPhotosAlbum(selectedImage, nil, nil, nil)

    self.dismissViewControllerAnimated(true, completion: nil)


}


郎朗坤
浏览 803回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP