Browse Source

Added GCDWebServerEscapeURLString()

Pierre-Olivier Latour 11 years ago
parent
commit
6d43485039
2 changed files with 6 additions and 2 deletions
  1. 1 0
      CGDWebServer/GCDWebServer.h
  2. 5 2
      CGDWebServer/GCDWebServer.m

+ 1 - 0
CGDWebServer/GCDWebServer.h

@@ -36,6 +36,7 @@ extern "C" {
 #endif
 #endif
 
 
 NSString* GCDWebServerGetMimeTypeForExtension(NSString* extension);
 NSString* GCDWebServerGetMimeTypeForExtension(NSString* extension);
+NSString* GCDWebServerEscapeURLString(NSString* string);
 NSString* GCDWebServerUnescapeURLString(NSString* string);
 NSString* GCDWebServerUnescapeURLString(NSString* string);
 NSDictionary* GCDWebServerParseURLEncodedForm(NSString* form);
 NSDictionary* GCDWebServerParseURLEncodedForm(NSString* form);
 
 

+ 5 - 2
CGDWebServer/GCDWebServer.m

@@ -105,9 +105,12 @@ NSString* GCDWebServerGetMimeTypeForExtension(NSString* extension) {
   return mimeType ? mimeType : kGCDWebServerDefaultMimeType;
   return mimeType ? mimeType : kGCDWebServerDefaultMimeType;
 }
 }
 
 
+NSString* GCDWebServerEscapeURLString(NSString* string) {
+  return ARC_BRIDGE_RELEASE(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)string, NULL, CFSTR(":@/?&=+"), kCFStringEncodingUTF8));
+}
+
 NSString* GCDWebServerUnescapeURLString(NSString* string) {
 NSString* GCDWebServerUnescapeURLString(NSString* string) {
-  return ARC_BRIDGE_RELEASE(CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault, (CFStringRef)string, CFSTR(""),
-                                                                                    kCFStringEncodingUTF8));
+  return ARC_BRIDGE_RELEASE(CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault, (CFStringRef)string, CFSTR(""), kCFStringEncodingUTF8));
 }
 }
 
 
 NSDictionary* GCDWebServerParseURLEncodedForm(NSString* form) {
 NSDictionary* GCDWebServerParseURLEncodedForm(NSString* form) {