上传到Imageshack

时间:2012-09-27 11:25:39

标签: c# http http-post imageshack

有人知道如何使用C#上传到ima​​geshack.us吗?这里有两个其他线程无法帮助:/ 那是我的一段代码。 “PostParamCollection”是用于发送HTTP Post的库。非常感谢任何帮助!

我收到错误消息:“ 抱歉,我们检测到收到了意外数据。缺少必需参数'fileupload'或您的帖子不是multipart / form-data “

String imageshackurl = "http://www.imageshack.us/upload_api.php?";

                    PostParamCollection postParamCollection = new PostParamCollection();
                    postParamCollection.Add(new PostParam("key", imageshack_key));
                    postParamCollection.Add(new PostParam("Content-Disposition", "form-data"));
                    postParamCollection.Add(new PostParam("filename", "a.jpg"));
                    postParamCollection.Add(new PostParam("Content-Type", "image/png"));

                    HttpPost httpPost = new HttpPost(imageshackurl);
                    httpPost.doPost(postParamCollection);
                    String link = httpPost.responseStream;

                    WriteLog(link);

1 个答案:

答案 0 :(得分:0)

您似乎没有向postParamCollection添加 fileupload 参数,我认为该参数需要是byte[]类型并包含文件的内容

我看到PostParam使用字符串作为其名称和值,这不适合提交二进制数据,例如图像文件。不幸的是,您需要使用不同的方法将数据发布到ImageShack。看一下内置的.NET WebClient类,它可以让你这样做。