Page Speed Optimization Libraries  1.13.35.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Static Public Member Functions | Static Public Attributes | List of all members
net_instaweb::HttpAttributes Struct Reference

#include "http_names.h"

Static Public Member Functions

static const StringPieceVector & SortedEndToEndHeaders ()
 
static const StringPieceVector & SortedHopByHopHeaders ()
 
static const StringPieceVector & CachingHeadersToBeRemoved ()
 

Static Public Attributes

static const char kAccept []
 
static const char kAcceptEncoding []
 
static const char kAcceptRanges []
 
static const char kAccessControlAllowOrigin []
 
static const char kAccessControlAllowCredentials []
 
static const char kAge []
 
static const char kAllow []
 
static const char kAltSvc []
 
static const char kAlternateProtocol []
 
static const char kAttachment []
 
static const char kAuthorization []
 
static const char kCacheControl []
 
static const char kConnection []
 
static const char kContentEncoding []
 
static const char kContentDisposition []
 
static const char kContentLanguage []
 
static const char kContentLength []
 
static const char kContentSecurityPolicy []
 
static const char kContentType []
 
static const char kCookie []
 
static const char kCookie2 []
 
static const char kDate []
 
static const char kDeflate []
 
static const char kDnt []
 
static const char kEtag []
 
static const char kExpires []
 
static const char kGzip []
 
static const char kHost []
 
static const char kIfModifiedSince []
 
static const char kIfNoneMatch []
 
static const char kKeepAlive []
 
static const char kLastModified []
 
static const char kLink []
 
static const char kLocation []
 
static const char kMaxAge []
 
static const char kNoCache []
 
static const char kNoCacheMaxAge0 []
 
static const char kNoStore []
 
static const char kNosniff []
 
static const char kOrigin []
 
static const char kPragma []
 
static const char kPrivate []
 
static const char kProxyAuthenticate []
 
static const char kProxyAuthorization []
 
static const char kPublic []
 
static const char kPurpose []
 
static const char kReferer []
 sic
 
static const char kRefresh []
 
static const char kSaveData []
 
static const char kServer []
 
static const char kSetCookie []
 
static const char kSetCookie2 []
 
static const char kTE []
 
static const char kTrailers []
 
static const char kTransferEncoding []
 
static const char kUpgrade []
 
static const char kUserAgent []
 
static const char kVary []
 
static const char kVia []
 
static const char kWarning []
 
static const char kXmlHttpRequest []
 
static const char kXAssociatedContent []
 
static const char kXContentTypeOptions []
 
static const char kXForwardedFor []
 
static const char kXForwardedProto []
 
static const char kXGooglePagespeedClientId []
 
static const char kXGoogleRequestEventId []
 
static const char kXPsaBlockingRewrite []
 
static const char kXPsaBlockingRewriteMode []
 
static const char kXPsaBlockingRewriteModeSlow []
 
static const char kXPsaClientOptions []
 A request header for client to specify client options.
 
static const char kXPsaLoadShed []
 This header is set on optional fetches that got dropped due to load.
 
static const char kXRequestedWith []
 
static const char kXOriginalContentLength []
 
static const char kXUACompatible []
 
static const char kXSendfile []
 Sendfile type responses.
 
static const char kXAccelRedirect []
 
static const char kXPageSpeedLoop []
 PageSpeed Loop detection for proxy mode.
 

Detailed Description

Global constants for common HTML attributes names and values.

Todo:
TODO(jmarantz): Proactively change all the occurrences of the static strings to use these shared constants.

Member Function Documentation

static const StringPieceVector& net_instaweb::HttpAttributes::CachingHeadersToBeRemoved ( )
static

Gets a StringPieceVector containing the caching-related headers that should be removed from responses. Note: The returned vector contains NULL-terminated char* entries but returning it via StringPieceVector causes us to lose this guarantee and we end up creating temporary GoogleStrings to convert these back to char*. This performance overhead might be revisited if considered important.

static const StringPieceVector& net_instaweb::HttpAttributes::SortedEndToEndHeaders ( )
static

Gets a sorted StringPieceVector containing all the end-to-end headers. Any fields listed in here should be ignored during sanitization when they are specified in a Connection: header. See http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html#sec13.5.1 and https://www.mnot.net/blog/2011/07/11/what_proxies_must_do

static const StringPieceVector& net_instaweb::HttpAttributes::SortedHopByHopHeaders ( )
static

Gets a sorted StringPieceVector containing all the hop-by-hop headers, plus Set-Cookie and Set-Cookie2, per

http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html Note: The returned vector contains NULL-terminated char* entries but returning it via StringPieceVector causes us to lose this guarantee and we end up creating temporary GoogleStrings to convert these back to char*. This performance overhead might be revisited if considered important.

Member Data Documentation

const char net_instaweb::HttpAttributes::kXOriginalContentLength[]
static

This header is set on optimized responses to indicate the original content length.

const char net_instaweb::HttpAttributes::kXPsaBlockingRewrite[]
static

If this header's value matches the configured blocking rewrite key, then all rewrites are completed before the response is sent to the client.

const char net_instaweb::HttpAttributes::kXPsaBlockingRewriteMode[]
static

This header determines how the blocking rewrite will behave; will it wait for async events or not.

const char net_instaweb::HttpAttributes::kXPsaBlockingRewriteModeSlow[]
static

Value of the kXPsaBlockingRewriteMode header which makes the blocking rewrite wait for async events.

Todo:
TODO(bharathbhushan): Does this belong somewhere else?

The documentation for this struct was generated from the following file: