C# 使用c上载文件时出现远程服务器错误(401)

C# 使用c上载文件时出现远程服务器错误(401),c#,C#,我试图上传一个文件到服务器,但它给我401错误,这是我的代码 static void Main(string[] args) { String key = "EwH6r-U61eveh4kjrx4QiZVjaNrU4QGZ"; String input = @"E:\New folder\untitled_1.png"; String output = @"E:\New folder (2)\untitled_1.png"; String url = "http

我试图上传一个文件到服务器,但它给我401错误,这是我的代码

static void Main(string[] args)
{
    String key = "EwH6r-U61eveh4kjrx4QiZVjaNrU4QGZ";
    String input = @"E:\New folder\untitled_1.png";
    String output = @"E:\New folder (2)\untitled_1.png";

    String url = "https://api.tinify.com/shrink";
    WebClient client = new WebClient();
    //  HttpWebRequest client = (HttpWebRequest)WebRequest.Create(url);
    //  client.KeepAlive = false;
    // client.ContentType = "application/x-www-form-urlencoded";
    // client.Method = "POST";
    //  client.Timeout = System.Threading.Timeout.Infinite;
    //  client.Credentials = new NetworkCredential("?", "?");
    client.UseDefaultCredentials = false;
    String auth = Convert.ToBase64String(Encoding.UTF8.GetBytes("api:" + key));
    client.Headers.Add(HttpRequestHeader.Authorization, "Basic" + auth);
    //String input1 = @"key=GTThtXcEQ7shvgFL-aFy_W_tRNhHgMl3&image=" + Convert.ToBase64String(File.ReadAllBytes(input));
    // String input3 = input1+auth;
    // byte[] bytes = Encoding.UTF8.GetBytes(input1);
    // Stream os = null;
    try
    {
        // client.ContentLength = bytes.Length;
        //  os = client.GetRequestStream();
        //  os.Write(bytes, 0, bytes.Length);
        client.UploadData(url, File.ReadAllBytes(input));
        // client.UploadFile(url, "POST", input);
        client.DownloadFile(client.ResponseHeaders["Location"], output);
    }
    catch (Exception e)
    {
        Console.WriteLine("compression failed " + e.Message);
    }

}`

在生成授权标头字符串时,word Basic和授权密钥之间缺少空格字符:


client.Headers.AddHttpRequestHeader.Authorization,Basic+auth

你有上传那个驱动器的权限吗?是的,我有每次任务的权限