我正在尝试将图像上传到Twitter-API,这需要一个多部分/表单数据oAuth签名的POST请求。 然而,在我的代码中似乎存在某种错误,因为我每次尝试调用函数时都会遇到503错误。哪个应该是"暂时不可用"错误,但它在一天的不同时间是不变的,显然其他人在通过Twitter-API上传媒体时遇到同样的问题。
根据我发现的一些例子,我正在构建像这样的多部分标题:
postData := '--', boundary, String crlf,
'Content-Disposition: form-data; filename="upload.png"; name="media"', String crlf,
'Content-Type: image/png', String crlf,
'Content-Transfer-Encoding: base64', String crlf,
morphAsBinaryString, String crlf,
'--', boundary,'--', String crlf.
实际的httpPost命令如下:
request := client httpPost: url
content: postData
type: 'multipart/form-data; boundary=', boundary
do:[:req | WebUtils oAuthSign: req url: url extra: extra using: personalOauthParams].
这是正确的做法吗? 提前感谢您的帮助。
更新: 事实证明,媒体数据之前的行中缺少一个String crlf。现在我得到了#34;身份验证要求"错误。其他API调用没有问题。