如何上传到imgur用户的帐户

Iva*_*hub 2 c# oauth imgur

我可以使用这样的 api 将匿名图像上传到 imgur:

public static void UploadImage()
{
    Image image = GetImage();
    string base64 = Util.ImageToBase64(image);

    using (WebClient client = new WebClient())
    {
        client.Headers.Add("Authorization", "Client-ID " + clientID);

        NameValueCollection data = new NameValueCollection();
        data["image"] = base64;
        data["type"] = "base64";

        byte[] responsePayload = client.UploadValues("https://api.imgur.com/3/image/", "POST", data);
        string response = Encoding.ASCII.GetString(responsePayload);
    }
}
Run Code Online (Sandbox Code Playgroud)

它正在上传到一个完全随机的网址。我找不到任何说明如何执行此操作的文档,但是是否可以将图像上传到用户的帐户,以便它显示在他们上传的图像中?

Iva*_*hub 5

我想到了。"CLIENT-ID"您需要发送一个标头,而不是发送标"BEARER"头,其中包含您使用 imgur 的oauth 2 api收到的令牌。这允许您将图像发布到用户的帐户,而在我只提供客户端 ID 之前,它允许我发布匿名图像。代码如下所示:

client.Headers.Add("Authorization", "BEARER " + accessToken);
Run Code Online (Sandbox Code Playgroud)