From af5ac6546d492776dec0334003978f59f5b24cfa Mon Sep 17 00:00:00 2001 From: Ben Copsey Date: Sat, 4 Jun 2011 10:09:00 -0700 Subject: [PATCH] ASIFormDataRequests now use a UUID as part of the boundary for multipart/form-data --- Classes/ASIFormDataRequest.m | 11 ++++++++--- Classes/ASIHTTPRequest.m | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Classes/ASIFormDataRequest.m b/Classes/ASIFormDataRequest.m index 39d02ee5..6cf72802 100644 --- a/Classes/ASIFormDataRequest.m +++ b/Classes/ASIFormDataRequest.m @@ -221,8 +221,11 @@ - (void)buildMultipartFormDataPostBody NSString *charset = (NSString *)CFStringConvertEncodingToIANACharSetName(CFStringConvertNSStringEncodingToEncoding([self stringEncoding])); - // Set your own boundary string only if really obsessive. We don't bother to check if post data contains the boundary, since it's pretty unlikely that it does. - NSString *stringBoundary = @"0xKhTmLbOuNdArY"; + // We don't bother to check if post data contains the boundary, since it's pretty unlikely that it does. + CFUUIDRef uuid = CFUUIDCreate(nil); + NSString *uuidString = [(NSString*)CFUUIDCreateString(nil, uuid) autorelease]; + CFRelease(uuid); + NSString *stringBoundary = [NSString stringWithFormat:@"0xKhTmLbOuNdArY-%@",uuidString]; [self addRequestHeader:@"Content-Type" value:[NSString stringWithFormat:@"multipart/form-data; charset=%@; boundary=%@", charset, stringBoundary]]; @@ -329,7 +332,9 @@ - (void)appendPostDataFromFile:(NSString *)file - (void)addToDebugBody:(NSString *)string { - [self setDebugBodyString:[[self debugBodyString] stringByAppendingString:string]]; + if (string) { + [self setDebugBodyString:[[self debugBodyString] stringByAppendingString:string]]; + } } #endif diff --git a/Classes/ASIHTTPRequest.m b/Classes/ASIHTTPRequest.m index 1c9d7fc4..369d4b11 100644 --- a/Classes/ASIHTTPRequest.m +++ b/Classes/ASIHTTPRequest.m @@ -24,7 +24,7 @@ #import "ASIDataCompressor.h" // Automatically set on build -NSString *ASIHTTPRequestVersion = @"v1.8.1 2011-06-04"; +NSString *ASIHTTPRequestVersion = @"v1.8.1-2 2011-06-04"; static NSString *defaultUserAgent = nil;