1

RestSharpコードを使用してWinRTアプリケーションの画像をTwitterにアップロードしようとしています。

RestClient twClient = new RestClient("https://upload.twitter.com");
twClient.Authenticator = OAuth1Authenticator.ForProtectedResource(........);
var postTweet = new RestRequest("/1/statuses/update_with_media.json", Method.POST);
postTweet.AddParameter("status", TweetBox.Text);
byte[] img = await GetDataAsync(imageFile);
postTweet.AddFile("media[]", img, imageFile.Name, "multipart/form-data");            
twClient.ExecuteAsync(postTweet, (response =>
{
     try
     {
          if (response.StatusCode == HttpStatusCode.OK) 
          {
              ....

これが私のGetDataAsyncで、分離ストレージ内のファイルからバイト配列を取得します

    public static async Task<byte[]> GetDataAsync(StorageFile file)
    {
        IRandomAccessStream stream = await file.OpenAsync(FileAccessMode.Read);
        DataReader reader = new DataReader(stream.GetInputStreamAt(0));

        uint streamSize = (uint)stream.Size;
        await reader.LoadAsync(streamSize);
        byte[] buffer = new byte[streamSize];
        reader.ReadBytes(buffer);
        return buffer;
    }

サーバーの応答:

Expectation Failed
The expectation given in the Expect request-header field could not be met by this server.
The client sent
Expect: 100-continue
but we only allow the 100-continue expectation.
4

0 に答える 0