NSURLSession会自动对URL的文本进行URL编码吗?或者你必须手动做吗?
答案 0 :(得分:4)
不,您需要使用stringByAddingPercentEncodingWithAllowedCharacters:
对网址的每个部分进行编码。请参阅URLFragmentAllowedCharacterSet
,URLHostAllowedCharacterSet
等,以获取对每段网址进行编码的正确字符。
(请注意,这些都与NSURLSession
无关,后者需要NSURL
。它不接受字符串,因此编码不是问题。正确的问题是{是否{ {1}}自动转义以字符串形式传递的字符。)
(另请务必阅读以下评论。虽然NSURL
将正确对网址的每个部分进行编码,但您可能无法完全了解“正确”的含义。 RFC。特别是,如果查询包含stringByAddingPercentEncodingWithAllowedCharacters:
或&
,则可能需要其他编码。)