我尝试通过在 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/