gpt4 book ai didi

c# - 如何使 "new ASCIIEncoding().GetBytes(usernamePassword)"读取 "§"符号

转载 作者:行者123 更新时间:2023-11-30 21:50:48 25 4
gpt4 key购买 nike

我正在尝试从我的 harvest 帐户中获取所有客户...问题是密码包含 § 符号。我先把它拿走了,它起作用了,但现在我的老板告诉我密码不能更改,原因有很多。我已经尝试过 utf8encoding 等。

public List<Client> GetAllClients()
{
uri = "https://laios.harvestapp.com/clients";

using (WebClient webClient = new WebClient())
{
webClient.Headers[HttpRequestHeader.ContentType] = "application/json";
webClient.Headers[HttpRequestHeader.Accept] = "application/json";
webClient.Headers[HttpRequestHeader.Authorization] = "Basic " + Convert.ToBase64String(new ASCIIEncoding().GetBytes(usernamePassword));

string response = webClient.DownloadString(uri);

clientsList = JsonConvert.DeserializeObject<List<Wrapper>>(response).Select(c => c.client).ToList();
}
}

最佳答案

§ 不是 ASCII,因为它的代码是 167,即 > 127。

您可以尝试使用 Encoding.GetEncoding("windows-1252").GetBytes 和/或 Encoding.GetEncoding("iso-8859-1").GetBytes。要区分这两者,请尝试使用带有 欧元符号的密码。 windows-1252 应该支持它,iso-8859-1 不应该。

参见 here他们解释说通常编码应该是 iso-8859-1

关于c# - 如何使 "new ASCIIEncoding().GetBytes(usernamePassword)"读取 "§"符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36131785/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com