我正在尝试通过iOS TwitterKit(最新版本)上传视频。上传图片工作正常,初始化视频上传(接收media_id),但在尝试上传我的第一个块时,我收到了验证错误Domain=TwitterAPIErrorDomain Code=32 "Request failed: unauthorized (401)"
。
这是我的代码的一部分:
let contentType = "multipart/form-data;boundary="+multipartBoundary
let request = Twitter.sharedInstance().APIClient.URLRequestWithMethod("POST", URL: "https://upload.twitter.com/1.1/media/upload.json", parameters: params, error: nil) as! NSMutableURLRequest
request.setValue(contentType, forHTTPHeaderField: "Content-Type")
request.HTTPBody = Network.sharedInstance.bodyDataWithVideoData(videoData!)
Twitter.sharedInstance().APIClient.sendTwitterRequest(request, completion: { (_, data, error) -> Void in
if error != nil || data == nil {
println("error attaching twitter video upload: \(error)")
} else {
println("successfully uploaded video chunk")
println(data)
}
})
我错过了什么?谢谢你的帮助!
答案 0 :(得分:1)
在这里找到了我的问题的解决方案:https://stackoverflow.com/a/31259870/793146
事实证明,将“media”与视频的base64字符串相关联可以解决问题(而不是附加多部分正文)。