我正在尝试创建一个简单的Imgur应用程序,它将通过WebClient.UploadValues()调用将图像上传到他们的服务器。我在StackOverflow的其他地方找到了这段代码:
public static void PostToImgur(string ImageFilePath)
{
using (var w = new WebClient())
{
var values = new NameValueCollection
{
{ "key", API_KEY },
{ "image", Convert.ToBase64String(File.ReadAllBytes(ImageFilePath)) }
};
byte[] response = w.UploadValues("http://imgur.com/api/upload.xml", values);
XDocument result = (XDocument.Load(new MemoryStream(response)));
}
}
我在返回WebClient响应的行上插入了一个断点,但它似乎完全跳过它而不会抛出任何异常或任何异常。这不是我以前在Visual Studio中见过的任何东西,所以有些东西让我相信可能会发生一些奇怪的事情。
如果有帮助,我在OSX中的Windows 7虚拟机中运行它。有人想知道为什么会这样吗?
答案 0 :(得分:2)
您可能想尝试
using (WebClient client = new WebClient())
{
client.UseDefaultCredentials = true;
...
}
答案 1 :(得分:0)
发现问题,我使用OAuth令牌传递给Imgur,其中此方法用于使用匿名API上传。
获取匿名应用程序的新API密钥解决了这个问题。