gpt4 book ai didi

.net - .net UrlEncode-小写问题

转载 作者:行者123 更新时间:2023-12-03 10:06:54 24 4
gpt4 key购买 nike

我正在为网关进行数据传输,这需要我以UrlEncoded形式发送数据。但是,.net的UrlEncode创建小写标记,并且中断了传输(Java创建了大写)。

有什么想法如何强制.net执行大写的UrlEncoding?

更新1:

.net输出:

dltz7UK2pzzdCWJ6QOvWXyvnIJwihPdmAioZ%2fENVuAlDQGRNCp1F

与Java:
dltz7UK2pzzdCWJ6QOvWXyvnIJwihPdmAioZ%2FENVuAlDQGRNCp1F

(这是一个base64d 3DES字符串,我需要保持这种情况)。

最佳答案

我认为您对C#所提供的功能一无所知,并且遇到错误提示在另一端实现的UrlDecode函数执行不佳。

话虽如此,您只需要循环遍历字符串,并且只将%符号后面的两个字符大写。这样一来,您就可以将base64数据保持完整,同时将编码的字符按摩成正确的格式:

public static string UpperCaseUrlEncode(string s)
{
char[] temp = HttpUtility.UrlEncode(s).ToCharArray();
for (int i = 0; i < temp.Length - 2; i++)
{
if (temp[i] == '%')
{
temp[i + 1] = char.ToUpper(temp[i + 1]);
temp[i + 2] = char.ToUpper(temp[i + 2]);
}
}
return new string(temp);
}

关于.net - .net UrlEncode-小写问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/918019/

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