我正在使用外部api,我想测试它将如何接受特殊字符...所以我尝试发送以下值: -
!"£$%^&*()_+-=[]{},./;'[]#?:@~{};:\|¬`
保存在外部系统中,如下所示: -
!"%u00a3$%^&*()_+-=[]{},./;'[]#?:@~{};:\|%u00ac`
这意味着外部api无法将%u00a3
解码为£
,也无法将%u00ac
解码为¬
??虽然它能够正确解码其他值...所以它有理由以不同的方式处理£
和¬
吗?换句话说,它无法正确解码这两个承租人吗?
答案 0 :(得分:2)
外部api可能使用ASCII字符集: https://en.wikipedia.org/wiki/ASCII
由于ASCII字符集中不存在字符£
和¬
,因此api返回字符的unicode十六进制值(%u
,表示它是一个unicode字符,{ {1}},这是字符00ac
)的十六进制值。
您发送值的程序或读取字符串的方式也可能是一个问题。如果没有进一步的信息,就无法说明。