【问题标题】:The file “xxx.mp4” couldn’t be opened because you don’t have permission to view it无法打开文件“xxx.mp4”,因为您无权查看它
【发布时间】:2017-03-31 02:12:51
【问题描述】:

我使用 Alamofire 方法 multipartFormData.append(URL, withName: "file") 将视频上传到服务器,但收到错误消息:

multipartEncodingFailed(Alamofire.AFError.MultipartEncodingFailureReason.bodyPartFileNotReachableWithError(file:///var/mobile/Media/DCIM/100APPLE/IMG_0939.mp4, Error Domain=NSCocoaErrorDomain Code=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 {Error Domain=NSPOSIXErrorDomain Code=1 "Operation not allowed"}}))

我已经打开了隐私 - 照片库使用说明,但我收到了这个错误,我不知道。

我的代码:

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)
        }
    }
)

【问题讨论】:

  • 我刚刚遇到了同样的问题。如果您找到任何解决方法,请分享!
  • 同样的问题!有什么想法吗?
  • 有人遇到过这个问题吗?

标签: swift video permissions alamofire


【解决方案1】:

你需要使用startAccessingSecurityScopedResource

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()
    }
}

【讨论】:

  • 救命稻草!谢谢老哥
  • 不适合我
猜你喜欢
  • 2016-03-10
  • 2014-07-09
  • 2015-02-23
  • 2015-04-15
  • 1970-01-01
  • 1970-01-01
  • 2020-06-09
  • 2020-03-12
相关资源
最近更新 更多