swift - 如何使用 Swift 通过传递 URL 中的参数来上传图片?

标签 swift image-uploading nsurlsession nsurl

我尝试通过在 URL 中传递参数来上传图像。但我收到的响应为“在此服务器上找不到请求的 URL”。

func uploadImage()
   {
     let imagedata = UIImageJPEGRepresentation(myImageView.image!, 1)
     if(imagedata == nil ) { return }
     self.upLoadButton.enabled = false
     let parameter = ["**":"**"]
     let url = "***URL***"
     let uploadScriptUrl = NSURL(fileURLWithPath: "\(url)\(parameter)")
     let request = NSMutableURLRequest(URL: uploadScriptUrl)
     request.setValue("Keep-Alive",forHTTPHeaderField: "connection")

     let configuration = NSURLSessionConfiguration.defaultSessionConfiguration()
     let session = NSURLSession(configuration: configuration, delegate: self, delegateQueue: NSOperationQueue.mainQueue())

     let task = session.uploadTaskWithRequest(request, fromData: imagedata!)
     task.resume()
   }

有上传图片的程序吗?如果是,请帮助我解决我的问题。

最佳答案

以下是我认为错误的快速列表:

  • 您正在发送带有正文的 GET 请求。您需要重写请求类型才能发送 POST 请求。
  • 您需要在请求对象上指定 Content-Type header 。
  • 您需要在服务器上安装一个实际的软件,该软件知道如何获取文件并将其存储在某个位置。
  • 您的请求 URL 必须是服务器上该软件的 URL,而不是本地文件 URL。
  • 如果您已经有这样的脚本,则说明您使用了错误的方法来创建 URL。您应该使用[NSURL URLWithString:@"http://..."relativeToURL: nil]

关于swift - 如何使用 Swift 通过传递 URL 中的参数来上传图片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36811267/

相关文章:

swift - 使用可重复使用的单元来保存数据

ios - 如何用字典中的数据填充 UITableView。 swift

ios - 命令 CompileSwift 因 Xcode 10 中的非零退出代码而失败

asp.net-mvc - ASP.NET MVC : upload multiple image files?

ios - NSURLCache 无视最大年龄

swift - 如何更改 UIPickerView 字体大小

php - 使用 $_FILES 更新图像时出错

php - 如何将图像从一个文件夹移动到另一个文件夹?

iOS:使用 OutputStream(url: , append:) 发送大文件(超过 3Gb)时出现问题 => 代码状态 500

ios - 使用 NSURLSession 和 Queue 上传数据