Documentation ¶
Overview ¶
Package resource defines representations of resources to generate signed exchanges for.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Resource ¶
type Resource struct { // RequestURL is the location to request this resource. RequestURL *url.URL // RedirectURL is non-nil when RequestURL gets redirected, and the value // represents the location after the redirect. // // All other fields, except RequestURL, should be unset when RedirectURL // has a non-nil value. RedirectURL *url.URL // PhysicalURL is the physical location of this resource. It is usually // identical to RequestURL, but can be different when the web server has // URL rewriting mechanism (e.g. to serve "index.html"). // // See also: Package urlrewrite. PhysicalURL *url.URL // ValidityURL represents the location of the validity data. ValidityURL *url.URL // Exchange represents a signed exchange generated for this resource. // // Exchange should be set through the SetExchange method to keep in sync // with the Integrity field. Exchange *signedexchange.Exchange // Integrity represents the integirty of HTTP response headers for this // resource. Technically, it is the hash of the CBOR representation of // the response headers in the signed exchange, prefixed by the algorithm // and base64-encoded ("sha256-wZp5f6H9..."). // // Integrity is set by the SetExchange method. Integrity string }
Resource represents a resource for which a signed exchange is generated.
func NewResource ¶
NewResource creates and initializes a new Resource for url.
func (*Resource) AllowedAltSXGHeader ¶
AllowedAltSXGHeader returns the value of a Link HTTP header to allow the resource to be distributed from different domains (rel="allowed-alt-sxg").
func (*Resource) SetExchange ¶
func (r *Resource) SetExchange(e *signedexchange.Exchange) error
SetExchange populates r.Exchange with the provided signed exchange e and updates r.Integrity accordingly. It returns a non-nil error when it fails to compute the new integrity value, in which case r is not mutated.
Directories ¶
Path | Synopsis |
---|---|
Package cache defines the ResourceCache interface and provides the most basic implementation.
|
Package cache defines the ResourceCache interface and provides the most basic implementation. |
filewrite
Package filewrite provides ResourceCache that also saves signed exchanges to files on the Store operations to the cache.
|
Package filewrite provides ResourceCache that also saves signed exchanges to files on the Store operations to the cache. |
Package httplink defines a representation of Web Linkings.
|
Package httplink defines a representation of Web Linkings. |
Package preload defines representations of preload links.
|
Package preload defines representations of preload links. |
preloadtest
Package preloadtest provides utilities for preload link testing.
|
Package preloadtest provides utilities for preload link testing. |
Click to show internal directories.
Click to hide internal directories.