我使用阿拉莫菲尔方法multipartFormData.append(URL, withName: "file")
将视频上传到服务器,但我收到一条错误消息:
multipartEncodingFailed(Alamofire.AFError.MultipartEncodingFailureReason.bodyPartFileNotReachableWithError(file:///var/mobile/Media/DCIM/100APPLE/IMG_0939.mp4,错误域=NSCocoaErrorDomain代码=257“文件“IMG_0939.mp4”无法打开,因为您没有查看它的权限。“ UserInfo={NSURL=file:///var/mobile/Media/DCIM/100APPLE/IMG_0939.mp4,NSFilePath=/var/mobile/Media/DCIM/100APPLE/IMG_0939.mp4,NSUnderlyingError=0x174450d10 {错误域=NSPOSIXErrorDomain代码=1“不允许操作”}}))
我已经打开了隐私 - 照片库使用说明,但出现此错误,我不知道。
My code:
alamofireManager?.upload(
multipartFormData: { multipartFormData in
for i in 0..<videoURLs.count {
multipartFormData.append(videoURLs[i], withName: "file")
}
},
to: url + urlString,
headers: headers,
encodingCompletion: { encodingResult in
switch encodingResult {
case .success(let upload, _, _):
upload.uploadProgress(closure: { (progress) in
//Print progress
//print(progress)
})
upload.responseJSON { response in
if let value = response.result.value as? [String: AnyObject]{
success(value)
}
}
case .failure(let encodingError):
failture(encodingError)
}
}
)
你需要使用开始访问SecurityScopedResource
if let url = file.url, url.startAccessingSecurityScopedResource() {
multipartFormData.append(url, withName: "some-file.pdf")
// After using the resource make sure you stop the access
if url.startAccessingSecurityScopedResource() {
url.stopAccessingSecurityScopedResource()
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)