asset-server-options.md 5.9 KB


title: "AssetServerOptions" isDefaultIndex: false

generated: true

import MemberInfo from '@site/src/components/MemberInfo'; import GenerationInfo from '@site/src/components/GenerationInfo'; import MemberDescription from '@site/src/components/MemberDescription';

AssetServerOptions

The configuration options for the AssetServerPlugin.

interface AssetServerOptions {
    route: string;
    assetUploadDir: string;
    assetUrlPrefix?: string | ((ctx: RequestContext, identifier: string) => string);
    previewMaxWidth?: number;
    previewMaxHeight?: number;
    presets?: ImageTransformPreset[];
    imageTransformStrategy?: ImageTransformStrategy | ImageTransformStrategy[];
    namingStrategy?: AssetNamingStrategy;
    previewStrategy?: AssetPreviewStrategy;
    storageStrategyFactory?: (
        options: AssetServerOptions,
    ) => AssetStorageStrategy | Promise<AssetStorageStrategy>;
    cacheHeader?: CacheConfig | string;
}
### route The route to the asset server. ### assetUploadDir The local directory to which assets will be uploaded when using the LocalAssetStorageStrategy. ### assetUrlPrefix RequestContext, identifier: string) => string)`} /> The complete URL prefix of the asset files. For example, "https://demo.vendure.io/assets/". A function can also be provided to handle more complex cases, such as serving multiple domains from a single server. In this case, the function should return a string url prefix. If not provided, the plugin will attempt to guess based off the incoming request and the configured route. However, in all but the simplest cases, this guess may not yield correct results. ### previewMaxWidth The max width in pixels of a generated preview image. ### previewMaxHeight The max height in pixels of a generated preview image. ### presets ImageTransformPreset[]`} /> An array of additional ImageTransformPreset objects. ### imageTransformStrategy ImageTransformStrategy | ImageTransformStrategy[]`} default={`[]`} since="3.1.0" /> The strategy or strategies to use to determine the parameters for transforming an image. This can be used to implement custom image transformation logic, for example to limit transform parameters to a known set of presets. If multiple strategies are provided, they will be executed in the order in which they are defined. If a strategy throws an error, the image transformation will be aborted and the error will be logged, with an HTTP 400 response sent to the client. ### namingStrategy AssetNamingStrategy`} default={`HashedAssetNamingStrategy`} /> Defines how asset files and preview images are named before being saved. ### previewStrategy AssetPreviewStrategy`} since="1.7.0" /> Defines how previews are generated for a given Asset binary. By default, this uses the SharpAssetPreviewStrategy ### storageStrategyFactory AssetServerOptions, ) => AssetStorageStrategy | Promise<AssetStorageStrategy>`} default={`() => LocalAssetStorageStrategy`} /> A function which can be used to configure an AssetStorageStrategy. This is useful e.g. if you wish to store your assets using a cloud storage provider. By default, the LocalAssetStorageStrategy is used. ### cacheHeader CacheConfig | string`} default={`'public, max-age=15552000'`} since="1.9.3" /> Configures the `Cache-Control` directive for response to control caching in browsers and shared caches (e.g. Proxies, CDNs). Defaults to publicly cached for 6 months.