最近遇到一个egg pain的事情:
请求头里面添加一个DeviceSign的字段,该字段用RSA加密,发现加密后有折行,折行被认为是无效的头部信息即request.allHTTPHeaderFields中不包含DeviceSign相关信息。
处理方式:
NSString *deviceSign = @"deviceSign";
deviceSign = [deviceSign stringByReplacingOccurrencesOfString:@"\r\n" withString:@""];
deviceSign = deviceSign ? : @"";
[request setValue:deviceSign forHTTPHeaderField:@"DeviceSign"];
折行出现原因:
base64加密后每64/76个字符就会执行换行操作,当deviceSign字符串特别长的时候,RSA加密后得到的字符串会更长,当多于64/76时就会执行换行操作
网友评论