C# HttpUtility.UrlEncode 生成大写字母结果

本文探讨了C#在对接Java系统时遇到的数据验证问题,主要集中在URL编码和MD5加密的差异上。C#使用HttpUtility.UrlEncode方法编码字符串,结果为大写,而Java的编码可能产生小写,导致加密后的字符串不匹配。解决方案在于统一编码规范,确保双方编码一致。
摘要由CSDN通过智能技术生成

C# 对接Java开发系统,对方数据验证使用url编码后再对其进行MD5加密,{"traceNo":"1126531180784"} url编码之后的字符串为大写(%7B%22traceNo%22%3A%221126531180784%22%7D),这样加密出来的字符串就.net平台加密出来的(%7b%22traceNo%22%3a%221126531180784%22%7d)不匹配,

public string CustomizeUrlEncode(string str)
{
    StringBuilder builder = new StringBuilder();
    foreach (char c in str)
    {
        if (HttpUtility.UrlEncode(c.ToString()).Length > 1)
        {
            builder.Append(HttpUtility.UrlEncode(c.ToString()).ToUpper());
        }
        else
        {
            builder.Append(c);
        }
    }
    return builder.ToString();
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值