iOS UrlDecode

119 阅读1分钟

前言

最近用青花瓷调试数据的时候很不方便:

1.不能明显的查看参数,而且没按固定的格式展示

2.导入postman不能一键转格式

于是写了个小工具用于格式转换并重排版

展示

image.png 放入postman中

image.png

image.png

代码

    NSString *str = @"";

    str = self.inputTextView.text;

    NSMutableDictionary *dic = [NSMutableDictionary dictionary];

    NSArray *array = [str componentsSeparatedByString:@"&"];

    for (int i = 0; i<array.count; i++) {

        NSString *arrString = array[i];

        if ([arrString containsString:@"="]) {//如果有=

            NSArray *arr = [arrString componentsSeparatedByString:@"="];

            NSString *value = [arr[1] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

            

            NSLog(@"%@",value);

            NSString *key = arr[0];

            if(key.length>0){

                [dic setObject:value forKey:key];

            }

        }

    }

    NSLog(@"%@",dic);

    NSMutableString *mString = [NSMutableString string];

    for (NSString *key in dic.allKeys) {

        NSString *value = dic[key];

        value = [value stringByReplacingOccurrencesOfString:@"\n" withString:@""];

        value = [value stringByReplacingOccurrencesOfString:@"\r" withString:@""];

        NSString *str = [NSString stringWithFormat:@"%@:%@\n",key,value];

        [mString appendString:str];

    }

    

    NSString *res = nil;

//    res = [dic yy_modelToJSONString];

    res = mString;

    self.outputTextView.text = res;