我正在尝试使用 Twitter API 版本 1.1 和 update_with_media.json 方法将图像上传到 Twitter。
https://dev.twitter.com/docs/api/1.1/post/statuses/update_with_media
这是我到目前为止的代码,但尽管有很多变化,我还是无法成功上传。
public TwitterResponse UpdateStatus(string message, String fileName, String contentType, byte[] image)
{
RestClient client = new RestClient
{
Authority = TwitterConstants.Authority,
VersionPath = TwitterConstants.Version
};
message = HttpUtility.HtmlEncode(message);
client.AddHeader("content-type", "multipart/form-data");
client.AddField("status", message);
client.AddField("media[]", Convert.ToBase64String(image) + ";filename=" + fileName + ";type=" + contentType);
RestRequest request = new RestRequest
{
Credentials = this.Credentials,
Path = "statuses/update_with_media.json",
Method = Hammock.Web.WebMethod.Post
};
return new TwitterResponse(client.Request(request));
}
我正在使用 Hammock 来执行这些请求。
只是为了排除可能的其他问题,我可以使用 update.json 方法成功地将状态更新发布到 Twitter。
我也尝试过使用 client.AddFile 方法并使用 Fiddler 看起来一切就绪。但是我不断收到的错误消息是
{"errors":[{"code":195,"message":"Missing or invalid url parameter"}]}