最近在调试某运营商短信接口API,接口会对使用UrlEncode的字符串进行签名验证,而在接口调用过程中,偶发性出现签名验证失败的问题。
经过反复测试,发现主要出现在存在一些特殊英文字符的情况下,比如英文的括号、英文的感叹号等,最后反查到 dotnet 中对 UrlEncode 有多种方法,并且返回的结果是有差异的。