IOS 使用AF网络请求统一RSA加密+URL不识别中文的解决办法

  • Post author:
  • Post category:其他





一:


使用AF网络请求统一RSA加密:




在AFURLRequestSerialization.m文件中找到下面的方法:




#pragma mark – AFURLRequestSerialization




– (NSURLRequest *)requestBySerializingRequest:(NSURLRequest *)request




withParameters:(id)parameters




error:(NSError *__autoreleasing *)error




在case AFHTTPRequestQueryStringDefaultStyle:中首先进行请求方式的判断(如何想在POST方式中加


密,就判断是否为POST反之判断GET)将方法中的parameters转化为NSData类型之后赋给query 之后对q


uery进行RSA加密  加密算法 http://download.csdn.net/detail/gaoqingbiao/9458886




其加密

方式如下:










query = [


CYRSA




encryptString


:query


publicKey


:K


RSAPublicKey


];






RSAPublicKey是加密的公匙为





#define kRSAPublicKey @

“MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDFK2EP+e1cdAwhdCHfsjlRi3jg\



2CYZxBgccZw0B2Bq/alkPsJZC259G20A4bkX33V19zBe9xKruo13tDi309Z8dNKs\



fSjjcu1mp1BGHnct9GY+kqjaaVhe7OS04J5wjJEgywsy9+Von8XvynTLawSHghMS\



g9pUoQPxdOFd6zhp9QIDAQAB”




二:URL不识别中文的解决办法:






/**



*  URL

对中文的转化



*



*  @param urlStr url



*



*  @return

含中文的

RUL



*/




+ (NSString *)URLEscapesUsingEncoding:(NSString *)urlStr




{




NSString *result = [urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];




return result;




}



版权声明:本文为gaoqingbiao原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。