mirror of
https://github.com/swisspol/GCDWebServer.git
synced 2026-04-24 00:00:04 +08:00
Moved +shouldAutomaticallyMapHEADToGET to GCDWebServer class
This commit is contained in:
@@ -63,6 +63,7 @@ NSString* GCDWebServerGetPrimaryIPv4Address(); // Returns IPv4 address of prima
|
|||||||
@interface GCDWebServer (Subclassing)
|
@interface GCDWebServer (Subclassing)
|
||||||
+ (Class)connectionClass;
|
+ (Class)connectionClass;
|
||||||
+ (NSString*)serverName; // Default is class name
|
+ (NSString*)serverName; // Default is class name
|
||||||
|
+ (BOOL)shouldAutomaticallyMapHEADToGET; // Default is YES which means HEAD requests are mapped to GET requests with the response body being discarded
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@interface GCDWebServer (Extensions)
|
@interface GCDWebServer (Extensions)
|
||||||
|
|||||||
@@ -510,6 +510,10 @@ static void _NetServiceClientCallBack(CFNetServiceRef service, CFStreamError* er
|
|||||||
return NSStringFromClass(self);
|
return NSStringFromClass(self);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
+ (BOOL)shouldAutomaticallyMapHEADToGET {
|
||||||
|
return YES;
|
||||||
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@implementation GCDWebServer (Extensions)
|
@implementation GCDWebServer (Extensions)
|
||||||
|
|||||||
@@ -40,7 +40,6 @@
|
|||||||
@end
|
@end
|
||||||
|
|
||||||
@interface GCDWebServerConnection (Subclassing)
|
@interface GCDWebServerConnection (Subclassing)
|
||||||
+ (BOOL)shouldAutomaticallyMapHEADToGET; // Default is YES which means HEAD requests are mapped to GET requests with the response body being discarded
|
|
||||||
- (void)open;
|
- (void)open;
|
||||||
- (void)didUpdateBytesRead; // Called from arbitrary thread after @totalBytesRead is updated - Default implementation does nothing
|
- (void)didUpdateBytesRead; // Called from arbitrary thread after @totalBytesRead is updated - Default implementation does nothing
|
||||||
- (void)didUpdateBytesWritten; // Called from arbitrary thread after @totalBytesWritten is updated - Default implementation does nothing
|
- (void)didUpdateBytesWritten; // Called from arbitrary thread after @totalBytesWritten is updated - Default implementation does nothing
|
||||||
|
|||||||
@@ -535,7 +535,7 @@ static inline NSUInteger _ScanHexNumber(const void* bytes, NSUInteger size) {
|
|||||||
if (extraData) {
|
if (extraData) {
|
||||||
NSString* requestMethod = ARC_BRIDGE_RELEASE(CFHTTPMessageCopyRequestMethod(_requestMessage)); // Method verbs are case-sensitive and uppercase
|
NSString* requestMethod = ARC_BRIDGE_RELEASE(CFHTTPMessageCopyRequestMethod(_requestMessage)); // Method verbs are case-sensitive and uppercase
|
||||||
DCHECK(requestMethod);
|
DCHECK(requestMethod);
|
||||||
if ([[self class] shouldAutomaticallyMapHEADToGET] && [requestMethod isEqualToString:@"HEAD"]) {
|
if ([[_server class] shouldAutomaticallyMapHEADToGET] && [requestMethod isEqualToString:@"HEAD"]) {
|
||||||
requestMethod = @"GET";
|
requestMethod = @"GET";
|
||||||
_virtualHEAD = YES;
|
_virtualHEAD = YES;
|
||||||
}
|
}
|
||||||
@@ -662,10 +662,6 @@ static NSString* _StringFromAddressData(NSData* data) {
|
|||||||
|
|
||||||
@implementation GCDWebServerConnection (Subclassing)
|
@implementation GCDWebServerConnection (Subclassing)
|
||||||
|
|
||||||
+ (BOOL)shouldAutomaticallyMapHEADToGET {
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)open {
|
- (void)open {
|
||||||
LOG_DEBUG(@"Did open connection on socket %i", _socket);
|
LOG_DEBUG(@"Did open connection on socket %i", _socket);
|
||||||
[self _readRequestHeaders];
|
[self _readRequestHeaders];
|
||||||
|
|||||||
Reference in New Issue
Block a user