0
我正嘗試使用Alamofire將圖像上傳到服務器。當我使用以下所有功能都可以正確使用保存在軟件包中的測試圖像。使用Alamofire從UIImagePickerController上傳圖像
func uploadImage()
{
let fileURL = NSBundle.mainBundle().URLForResource("Uploadtest", withExtension: "jpg")
Alamofire.upload(.PUT, url + "/api/Image" + id, file: fileURL!).responseString {
_, _, result in
print("Success: \(result.isSuccess)")
print("Response String: \(result.value)")
}
}
但是,我希望從UIImagePickerController上傳圖像。 Alamofire上傳方法將文件url作爲參數,而我從UIImagePickerController獲取UIImage的實例。我應該將此圖像保存到文檔或類似文件中,然後獲取該位置的URL以傳遞到Alamofire上傳方法?這是可能的還是有另一種方式我想念?
在你的'UIImagePickerDelegate'你需要利用 可選FUNC imagePickerController(_選擇器:的UIImagePickerController,didFinishPickingMediaWithInfo信息:[字符串:AnyObject]) 返回給你的信息的字典有一個鍵這應該是你的需要'UIImagePickerControllerMediaURL' – JMFR
感謝JMFR,看起來不錯,但由於某些原因,信息沒有值。我敢肯定,這是我做錯了,但! – Harg
我想你可能是對的,最好的辦法是保存本地副本。然後上傳。 (我猜這是因爲沙盒,我們不能在照片應用程序中獲取文件的URL,因爲它們有自己的數據目錄,與我們的應用程序數據分開) – JMFR