Unescaped control character around character

AFNetworking报错 Unescaped control character around character


原因可能是后台返回的数据里面有特殊字符,json解析不了。

拿到数据看了一下:

Unescaped control character around character

红框里面的字符串有问题(tab)

下面提供解决方法:

修改 AFAFURLResponseSerialization.m文件中的这个方法里面

- (id)responseObjectForResponse:(NSURLResponse *)response

                           data:(NSData *)data

                          error:(NSError *__autoreleasing *)error


-(NSString *)removeUnescapedCharacter:(NSString *)inputStr

{

    NSCharacterSet *controlChars = [NSCharacterSet controlCharacterSet];

    NSRange range = [inputStr rangeOfCharacterFromSet:controlChars];

    if (range.location != NSNotFound)

    {

        NSMutableString *mutable = [NSMutableString stringWithString:inputStr];

        while (range.location != NSNotFound)

        {

            [mutable deleteCharactersInRange:range];

            range = [mutable rangeOfCharacterFromSet:controlChars];

        }

        return mutable;

    }

    return inputStr;

}