WebClient.UploadValues() 不返回响应

本文关键字:返回 响应 UploadValues WebClient | 更新日期: 2023-09-27 18:33:37

我正在尝试创建一个简单的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虚拟机中运行它。有人知道为什么会发生这种情况吗?

WebClient.UploadValues() 不返回响应

你可能想试试

using (WebClient client = new WebClient())
{
     client.UseDefaultCredentials = true;
     ...
}

发现问题,我正在使用 OAuth 令牌传递给 Imgur,其中此方法用于使用匿名 API 上传。

为匿名应用程序获取新的 API 密钥解决了这个问题。