AFNetworking:编码包含'%'输出的URL字符串是%25

时间:2013-11-01 13:45:30

标签: ios afnetworking-2

使用AFNetworking 2.0 - 当使用NSDictionary参数执行get请求时 - 我的一个参数中包含一个% - 看起来AFNetworking在编码URL时将%25放在%前面 - 无论如何都要阻止这个舞会发生了什么?

1 个答案:

答案 0 :(得分:5)

%用于标记URL编码的字符。例如,%20是一个空格,%3D=等。您可以详细了解哪些字符会被编码,以及为什么here。百分比符号用于对其他字符进行URL编码,因此需要对其进行编码。 (否则,两个后续字符将被错误地解释。)

因此,将%编码为%25是预期的行为。如果您的服务器没有正确解析,那么您的服务器不符合我上面链接的文档中列出的标准。

也就是说,如果您真的希望覆盖此行为,可以通过继承AFURLRequestSerialization来实现,包含所有编码逻辑。您可以查看requestSerializer property on AFHTTPRequestOperationManager了解详情。