首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AtTask接口上传文件

AtTask接口上传文件
EN

Stack Overflow用户
提问于 2014-06-21 09:08:50
回答 1查看 333关注 0票数 0

我正在尝试将文件上传到AtTask,但我继续收到非法参数异常。我已经阅读了文档,并相信我有正确的代码,但我无法让它工作。有没有人有可以上传文件到AtTask的C#代码?下面是我的代码以供参考:

代码语言:javascript
复制
        BinaryReader br = new BinaryReader(fs);
        int bufferSize = 40960; //Amount of data that to be read from file(in bytes)
        byte[] buffer = br.ReadBytes(bufferSize);//reading the bytes
        string str = Convert.ToBase64String(buffer);

        string boundary = "----MyAppBoundary" + DateTime.Now.Ticks.ToString("x");

        var request = (HttpWebRequest)WebRequest.Create(fullUrl);
        request.ContentType = "multipart/form-data; boundary=" + boundary;
        request.Method = "POST";

        using (var requestStream = request.GetRequestStream())
        using (var writer = new StreamWriter(requestStream))
        {
            writer.WriteLine(string.Format("Content-Disposition: form-data; name=\"{0}\"", "uploadedFile"));
            writer.WriteLine();
            writer.WriteLine(str);                
        }

        using (WebResponse response = request.GetResponse())
        {
            using (Stream responseStream = response.GetResponseStream())
            {
                return ReadResponse(responseStream);
            }
        }
EN

回答 1

Stack Overflow用户

发布于 2014-06-24 06:28:19

确保您显式地指定了您的字符集(我一直使用UTF-8)。我从未通过Java上传过C#,但我有(生产系统函数式) AtTask示例,如果这会有帮助的话。下面是我用来指定字符集的一个简短示例。

代码语言:javascript
复制
writer.append("Content-Disposition: form-data; name=\"" + name + "\"")
      .append(LINE_FEED);
writer.append("Content-Type: text/plain; charset=UTF-8")
      .append(LINE_FEED);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24337341

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档