Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/119.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 将base64字符串与NSURLConnection一起使用_Ios_Base64_Nsurlconnection - Fatal编程技术网

Ios 将base64字符串与NSURLConnection一起使用

Ios 将base64字符串与NSURLConnection一起使用,ios,base64,nsurlconnection,Ios,Base64,Nsurlconnection,我正在使用NSURLConnect调用,当我的查询字符串中有空格时,我会得到不受支持的URL。为了解决这个问题,我将字符串转换为base64,但仍然会出现错误。如何通过NSUrlConnect成功发送base64字符串?如果这不可能,如何安全地发送带有空格的字符串 NSData *convertData = [queryWS dataUsingEncoding: NSUnicodeStringEncoding]; queryWS = [convertData base64EncodedStrin

我正在使用NSURLConnect调用,当我的查询字符串中有空格时,我会得到不受支持的URL。为了解决这个问题,我将字符串转换为base64,但仍然会出现错误。如何通过NSUrlConnect成功发送base64字符串?如果这不可能,如何安全地发送带有空格的字符串

NSData *convertData = [queryWS dataUsingEncoding: NSUnicodeStringEncoding];
queryWS = [convertData base64EncodedStringWithOptions:kNilOptions];

NSURLRequest *urlRequest =
[NSURLRequest requestWithURL:[NSURL URLWithString:queryWS]];
NSURLResponse *response = nil;
NSError *error = nil;
NSData *data = [NSURLConnection sendSynchronousRequest:urlRequest
                                     returningResponse:&response
                                                 error:&error];
if (!error) {
  responseDictionary =
  [NSJSONSerialization JSONObjectWithData:data
                                  options:0
                                    error:&parseError];

您不希望将URL字符串转换为base64编码。您想要的是正确地转义URL中的任何特殊字符。如果您只需要支持iOS 9或更高版本,请参阅
NSString-byaddingpercentescapesusingencoding:
方法或
NSString-byaddingpercentencodingwithallowedcharacters:

NSString *queryString = @"SOME_QUERY_STRING";
NSString *encodedQueryString = [queryString stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];