我正在尝试使用 Swift 3 从我确定存在的视频网址将视频上传到 Cloudinary(未签名上传)。 我是想把本地URL的内容,转成Data,然后上传数据。我收到一条消息:
Error Domain=com.cloudinary.error Code=400 "(null)" UserInfo={message=Invalid image file}
这是我的上传代码:
func approveFunc(){
let config = CLDConfiguration(cloudName: "xxxxx", apiKey: "xxxxxx")
let cloudinary = CLDCloudinary(configuration: config)
let params = CLDUploadRequestParams(params: ["resource_type": "video" as AnyObject])
var data: Data?
do{
data = try NSData(contentsOfFile: (self.videoURL.relativePath), options: NSData.ReadingOptions.alwaysMapped) as Data
} catch {
}
cloudinary.createUploader().upload(data: data!, uploadPreset: "fycdpm" , params: params, progress: nil, completionHandler: {(response, error) in
print("done")
print(response)
print(error)
})
}
我也试过直接从文件 url 上传:
cloudinary.createUploader().upload(url: self.videoURL, uploadPreset: "fycdp7cm" , params: params, progress: nil, completionHandler: {(response, error) in
print("done")
print(response)
print(error)
})
同样的错误
最佳答案
resource_type
似乎没有传递到服务器,因此 Cloudinary 期望上传图像(默认值)和错误。
您是否尝试过执行以下操作?
let params = CLDUploadRequestParams().setResourceType(.video)
关于Swift 3 上传视频到 Cloudinary 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44054142/