2

Box.netでWindowsストアアプリを開発しています。

winRTでbackgrounduploaderを使用してファイルをアップロードしようとしています。

コードスニペット:

    public async Task<UploadOperation> CreateUploadOperationV2(StorageFile file, string name, string destFolderId)
    {
        BackgroundUploader uploader = new BackgroundUploader();
        uploader.Method = "POST";
        uploader.SetRequestHeader("Authorization", "BoxAuth " + "api_key=" + mykey + "&auth_token=" + mytoken);
        var uploadUrl = "https://www.box.net/api/2.0/"+ "files/content";
        List<BackgroundTransferContentPart> parts = new List<BackgroundTransferContentPart>();
        var part = new BackgroundTransferContentPart("filename", name);
        part.SetFile(file);
        parts.Add(part);
        part = new BackgroundTransferContentPart("folder_id");
        part.SetText(destFolderId);
        parts.Add(part);
        var uploadOperation = await uploader.CreateUploadAsync(new Uri(uploadUrl), parts);
        return uploadOperation; 
    }

これは、ASCIIでエンコードされたファイル名では正常に機能しますが、他のファイル名では失敗しました。

ヘッダーでは、次のようになります。

Content-Disposition:form-data; name="ファイル名"; filename * = utf-8'' Foo%E8%A4%87.jpg

誰かがこれを手伝ってくれますか?

私はここで2日間立ち往生しています。

前もって感謝します!

4

1 に答える 1