Freigeben über


@azure/storage-file package

Klassen

Aborter

Eine Aborterinstanz implementiert die AbortSignal-Schnittstelle, kann HTTP-Anforderungen abbrechen.

  • Rufen Sie "Aborter.none" auf, um eine neue Aborter-Instanz ohne Timeout zu erstellen.
  • Rufen Sie "Aborter.timeout()" auf, um eine neue Aborter-Instanz mit Timeout zu erstellen.

Für eine vorhandene Instanz wird folgendes abgebrochen:

  • Rufen Sie aborter.withTimeout() auf, um eine untergeordnete Aborter-Instanz mit Timeout zu erstellen und zurückzugeben.
  • Rufen Sie aborter.withValue(key, value) auf, um eine untergeordnete Aborter-Instanz mit Schlüssel-Wert-Paar zu erstellen und zurückzugeben.
  • Rufen Sie aborter.abort() auf, um die aktuelle Instanz und alle untergeordneten Instanzen abzubrechen.
  • Rufen Sie "aborter.getValue(key)" auf, um den Wert mit dem entsprechenden Schlüssel vom aktuellen Abbruch für alle übergeordneten Elemente zu suchen und abzurufen.
AccountSASPermissions

NUR IN NODE.JS RUNTIME VERFÜGBAR. Dies ist eine Hilfsklasse, um eine Zeichenfolge zu erstellen, die die von einem AccountSAS gewährten Berechtigungen darstellt. Das Festlegen eines Werts auf "true" bedeutet, dass jeder SAS, der diese Berechtigungen verwendet, Berechtigungen für diesen Vorgang erteilt. Nachdem alle Werte festgelegt wurden, sollte dies mit toString serialisiert und als Berechtigungsfeld für ein <xref:IAccountSASSignatureValues>-Objekt festgelegt werden. Es ist möglich, die Berechtigungszeichenfolge ohne diese Klasse zu erstellen, aber die Reihenfolge der Berechtigungen ist besonders, und diese Klasse garantiert die Richtigkeit.

AccountSASResourceTypes

NUR IN NODE.JS RUNTIME VERFÜGBAR. Dies ist eine Hilfsklasse zum Erstellen einer Zeichenfolge, die die ressourcen darstellt, auf die ein AccountSAS zugreifen kann. Das Festlegen eines Werts auf "true" bedeutet, dass jede SAS, die diese Berechtigungen verwendet, Zugriff auf diesen Ressourcentyp gewährt. Nachdem alle Werte festgelegt wurden, sollte dies mit toString serialisiert und als Ressourcenfeld für ein <xref:IAccountSASSignatureValues>-Objekt festgelegt werden. Es ist möglich, die Ressourcenzeichenfolge ohne diese Klasse zu erstellen, aber die Reihenfolge der Ressourcen ist besonders, und diese Klasse garantiert die Korrektheit.

AccountSASServices

NUR IN NODE.JS RUNTIME VERFÜGBAR. Dies ist eine Hilfsklasse zum Erstellen einer Zeichenfolge, die die dienste darstellt, auf die ein AccountSAS zugreifen kann. Das Festlegen eines Werts auf "true" bedeutet, dass jeder SAS, der diese Berechtigungen verwendet, Zugriff auf diesen Dienst gewährt. Nachdem alle Werte festgelegt wurden, sollte dies mit toString serialisiert und als Dienstfeld für ein <xref:IAccountSASSignatureValues>-Objekt festgelegt werden. Es ist möglich, die Dienstzeichenfolge ohne diese Klasse zu erstellen, aber die Reihenfolge der Dienste ist besonders, und diese Klasse garantiert die Richtigkeit.

BrowserPolicyFactory

BrowserPolicyFactory ist eine Factoryklasse, die das Generieren von BrowserPolicy-Objekten unterstützt.

DirectoryURL

Eine DirectoryURL stellt eine URL zum Azure Storage-Verzeichnis dar, mit der Sie ihre Dateien und Verzeichnisse bearbeiten können.

FileSASPermissions

NUR IN NODE.JS RUNTIME VERFÜGBAR. Dies ist eine Hilfsklasse, um eine Zeichenfolge zu erstellen, die von einem ServiceSAS für eine Datei gewährte Berechtigungen darstellt. Das Festlegen eines Werts auf "true" bedeutet, dass jeder SAS, der diese Berechtigungen verwendet, Berechtigungen für diesen Vorgang erteilt. Sobald alle Werte festgelegt wurden, sollte dies mit toString serialisiert und als Berechtigungsfeld für ein <xref:IFileSASSignatureValues>-Objekt festgelegt werden. Es ist möglich, die Berechtigungszeichenfolge ohne diese Klasse zu erstellen, aber die Reihenfolge der Berechtigungen ist besonders, und diese Klasse garantiert die Richtigkeit.

FileSystemAttributes

Dies ist eine Hilfsklasse, um eine Zeichenfolge zu erstellen, die die NTFS-Attribute für eine Datei oder ein Verzeichnis darstellt.

FileURL

Eine FileURL stellt eine URL zu einer Azure Storage-Datei dar.

KeepAlivePolicyFactory

KeepAlivePolicyFactory ist eine Factoryklasse, die beim Generieren von KeepAlivePolicy-Objekten hilft.

LoggingPolicyFactory

LoggingPolicyFactory ist eine Factoryklasse, die das Generieren von LoggingPolicy-Objekten unterstützt.

Pipeline

Eine Pipelineklasse, die HTTP-Anforderungsrichtlinien enthält. Sie können eine Standardpipeline erstellen, indem Sie StorageURL.newPipeline() aufrufen. Oder Sie können eine Pipeline mit Ihren eigenen Richtlinien durch den Konstruktor von Pipeline erstellen. Verweisen Sie auf StorageURL.newPipeline() und bereitgestellte Richtlinien als Referenz, bevor Sie Ihre angepasste Pipeline implementieren.

RetryPolicyFactory

RetryPolicyFactory ist eine Factoryklasse, die beim Generieren von RetryPolicy-Objekten hilft.

SASQueryParameters

Stellt die Komponenten dar, aus denen die Abfrageparameter einer Azure Storage SAS bestehen. Dieser Typ wird nicht direkt vom Benutzer erstellt; sie wird nur von den typen <xref:IAccountSASSignatureValues> und <xref:IFileSASSignatureValues> generiert. Nachdem sie generiert wurde, kann sie in eine {@code Zeichenfolge} codiert und direkt an eine URL angefügt werden (falls hier jedoch Vorsicht zu beachten ist, gibt es vorhandene Abfrageparameter, die sich auf die geeigneten Methoden zum Anfügen dieser Abfrageparameter auswirken können). HINWEIS: Instanzen dieser Klasse sind unveränderlich.

ServiceURL

Ein ServiceURL stellt eine URL zum Azure Storage File-Dienst dar, mit der Sie Dateifreigaben bearbeiten können.

ShareSASPermissions

Dies ist eine Hilfsklasse, um eine Zeichenfolge zu erstellen, die von einem ServiceSAS für eine Freigabe gewährte Berechtigungen darstellt. Das Festlegen eines Werts auf "true" bedeutet, dass jeder SAS, der diese Berechtigungen verwendet, Berechtigungen für diesen Vorgang erteilt. Sobald alle Werte festgelegt wurden, sollte dies mit toString serialisiert und als Berechtigungsfeld für ein <xref:IFileSASSignatureValues>-Objekt festgelegt werden. Es ist möglich, die Berechtigungszeichenfolge ohne diese Klasse zu erstellen, aber die Reihenfolge der Berechtigungen ist besonders, und diese Klasse garantiert die Richtigkeit.

ShareURL

Eine ShareURL stellt eine URL zur Azure Storage-Freigabe dar, mit der Sie ihre Verzeichnisse und Dateien bearbeiten können.

StorageURL

Ein ServiceURL stellt eine basierte URL-Klasse für ServiceURL, ContainerURL und usw. dar.

TelemetryPolicyFactory

TelemetryPolicyFactory ist eine Factoryklasse, die das Generieren von TelemetryPolicy-Objekten unterstützt.

UniqueRequestIDPolicyFactory

UniqueRequestIDPolicyFactory ist eine Factoryklasse, die das Generieren von UniqueRequestIDPolicy-Objekten unterstützt.

AnonymousCredential

AnonymousCredential stellt ein credentialPolicyCreator-Mitglied bereit, das zum Erstellen von AnonymousCredentialPolicy-Objekten verwendet wird. AnonymousCredentialPolicy wird mit HTTP(S)-Anforderungen verwendet, die öffentliche Ressourcen lesen oder für die Verwendung mit Shared Access Signatures (SAS) verwenden.

Credential

Anmeldeinformationen sind eine abstrakte Klasse für die Signierung von Azure Storage-HTTP-Anforderungen. Diese Klasse hostt eine credentialPolicyCreator-Factory, die CredentialPolicy generiert.

SharedKeyCredential

NUR IN NODE.JS RUNTIME VERFÜGBAR. SharedKeyCredential für die Kontoschlüsselautorisierung des Azure Storage-Diensts.

Directory

Klasse, die ein Verzeichnis darstellt.

File

Klasse, die eine Datei darstellt.

Service

Klasse, die einen Dienst darstellt.

Share

Klasse, die eine Freigabe darstellt.

StorageClient
StorageClientContext
AnonymousCredentialPolicy

AnonymousCredentialPolicy wird mit HTTP(S)-Anforderungen verwendet, die öffentliche Ressourcen lesen oder für die Verwendung mit Shared Access Signatures (SAS) verwenden.

BrowserPolicy

BrowserPolicy behandelt Unterschiede zwischen Node.js und Browserlaufzeit, einschließlich:

  1. Browser speichern GET/HEAD-Anforderungen zwischen, indem Sie bedingte Header wie "IF_MODIFIED_SINCE" hinzufügen. BrowserPolicy ist eine Richtlinie, die verwendet wird, um eine Zeitstempelabfrage zur GET/HEAD-Anforderungs-URL hinzuzufügen, wodurch der Browsercache vermieden wird.

  2. Entfernen des Cookieheaders zur Sicherheit

  3. Entfernen des Headers mit Inhaltslänge, um Browserwarnungen zu vermeiden

CredentialPolicy

Anmeldeinformationsrichtlinie zum Signieren von HTTP(S)-Anforderungen vor dem Senden. Dies ist eine abstrakte Klasse.

KeepAlivePolicy

KeepAlivePolicy ist eine Richtlinie, die zum Steuern der Keep Alive-Einstellungen für jede Anforderung verwendet wird.

LoggingPolicy

LoggingPolicy ist eine Richtlinie, die zum Protokollieren von Anforderungen verwendet wird.

RetryPolicy

Wiederholungsrichtlinie mit exponentieller Wiederholung und linearer Wiederholung implementiert.

SharedKeyCredentialPolicy

SharedKeyCredentialPolicy ist eine Richtlinie, die zum Signieren einer HTTP-Anforderung mit einem freigegebenen Schlüssel verwendet wird.

TelemetryPolicy

TelemetryPolicy ist eine Richtlinie, die zum Kategorisieren des Benutzer-Agent-Headers für jede Anforderung verwendet wird.

UniqueRequestIDPolicy

UniqueRequestIDPolicy generiert eine UUID als x-ms-request-id-Headerwert.

Batch

Batch bietet grundlegende parallele Ausführung mit Parallelitätsgrenzwerten. Beendet die Ausführung von linken Vorgängen, wenn einer der ausgeführten Vorgänge einen Fehler auslöst. Batch kann jedoch keine laufenden Vorgänge abbrechen, Sie müssen sie selbst abbrechen.

BufferScheduler

Diese Klasse akzeptiert einen Node.js lesbaren Datenstrom als Eingabe und liest Daten aus dem Datenstrom in der internen Pufferstruktur, bis sie maxBuffers erreicht. Jeder verfügbare Puffer versucht, ausgehenden Handler auszulösen. Die interne Pufferstruktur enthält ein eingehendes Pufferarray und ein ausgehendes Pufferarray. Das Array des eingehenden Puffers enthält die "leeren" Puffer, die mit neuen eingehenden Daten gefüllt werden können. Das ausgehende Array enthält die gefüllten Puffer, die von outgoingHandler behandelt werden sollen. Jede oben genannte Puffergröße wird durch ParameterpufferSize definiert.

NUM_OF_ALL_BUFFERS = BUFFERS_IN_INCOMING + BUFFERS_IN_OUTGOING + BUFFERS_UNDER_HANDLING

<NUM_OF_ALL_BUFFERS = maxPuffer

TIPPS ZUR LEISTUNGSVERBESSERUNG:

  1. Für den Eingabestream highWaterMark ist es besser, den gleichen Wert mit dem bufferSize-Parameter festzulegen, wodurch Buffer.concat()-Operationen vermieden werden.
  2. Parallelität sollte einen kleineren Wert als maxBuffers festlegen, was hilfreich ist, um die Möglichkeit zu reduzieren, wenn ein ausgehender Handler auf die Datenstrom wartet. in diesem Fall werden ausgehende Handler blockiert. Die ausgehende Warteschlange sollte nicht leer sein.
RetriableReadableStream

NUR IN NODE.JS RUNTIME VERFÜGBAR. Ein Node.js ReadableStream wird intern erneut versuchen, wenn interner ReadableStream unerwartet endet.

Schnittstellen

IDirectoryCreateOptions
IDirectoryForceCloseHandlesSegmentOptions
IDirectoryListFilesAndDirectoriesSegmentOptions
IDirectoryListHandlesSegmentOptions
IDirectoryProperties
IFileCreateOptions
IFileDownloadOptions
IFileGetRangeListOptions

Die Option wird als Parität zur REST-Definition definiert. Auch wenn Crc64-Quellinhalte nicht zur Verwendung bereit sind, kann nicht darauf zugegriffen werden.

IFileListHandlesSegmentOptions
IFileProperties
IFileStartCopyOptions
IFileUploadRangeOptions
ISetPropertiesResponse
IAccountSASSignatureValues

NUR IN NODE.JS RUNTIME VERFÜGBAR. IAccountSASSignatureValues wird verwendet, um eine Freigegebene Zugriffssignatur (SAS) für ein Azure Storage-Konto zu generieren. Nachdem alle hier aufgeführten Werte entsprechend festgelegt wurden, rufen Sie generateSASQueryParameters() auf, um eine Darstellung des SAS abzurufen, die tatsächlich auf Datei-URLs angewendet werden kann. Hinweis: Sowohl diese Klasse als auch <xref:SASQueryParameters> vorhanden, da die erste Klasse änderbar und eine logische Darstellung ist, während letztere unveränderlich ist und zum Generieren tatsächlicher REST-Anforderungen verwendet wird.

IFileSASSignatureValues

NUR IN NODE.JS RUNTIME VERFÜGBAR. IFileSASSignatureValues wird verwendet, um das Generieren von Dateidienst-SAS-Token für Freigaben oder Dateien zu unterstützen.

IIPRange

Zulässiger IP-Bereich für eine SAS.

IRange

Bereich für Dienstvorgänge.

IKeepAliveOptions

Schnittstelle der KeepAlivePolicy-Optionen.

IRequestLogOptions

RequestLogOptions konfiguriert das Verhalten der Wiederholungsrichtlinie.

IPipelineOptions

Optionsschnittstelle für den Pipeline-Konstruktor.

IRetryOptions

Wiederholen Sie die Optionsschnittstelle.

IServiceListSharesSegmentOptions
IShareCreateOptions
IShareCreateSnapshotOptions
IShareDeleteMethodOptions
ISignedIdentifier
INewPipelineOptions

Optionsschnittstelle für die Pipeline.newPipeline-Methode.

ITelemetryOptions

Schnittstelle von TelemetryPolicy-Optionen.

AccessPolicy

Eine Access-Richtlinie.

CorsRule

CORS ist ein HTTP-Feature, mit dem eine Webanwendung, die unter einer Domäne ausgeführt wird, auf Ressourcen in einer anderen Domäne zugreifen kann. Webbrowser implementieren eine Sicherheitseinschränkung, die als Richtlinie für denselben Ursprung bezeichnet wird, die verhindert, dass eine Webseite APIs in einer anderen Domäne aufruft; CORS bietet eine sichere Möglichkeit, eine Domäne (die Ursprungsdomäne) zum Aufrufen von APIs in einer anderen Domäne zuzulassen.

DirectoryCreateHeaders

Definiert Kopfzeilen für den Create-Vorgang.

DirectoryCreateOptionalParams

Optionale Parameter.

DirectoryDeleteHeaders

Definiert Kopfzeilen für den Löschvorgang.

DirectoryDeleteMethodOptionalParams

Optionale Parameter.

DirectoryForceCloseHandlesHeaders

Definiert Kopfzeilen für den ForceCloseHandles-Vorgang.

DirectoryForceCloseHandlesOptionalParams

Optionale Parameter.

DirectoryGetPropertiesHeaders

Definiert Kopfzeilen für den GetProperties-Vorgang.

DirectoryGetPropertiesOptionalParams

Optionale Parameter.

DirectoryItem

Ein aufgelistetes Verzeichniselement.

DirectoryListFilesAndDirectoriesSegmentHeaders

Definiert Kopfzeilen für listFilesAndDirectoriesSegment-Vorgang.

DirectoryListFilesAndDirectoriesSegmentOptionalParams

Optionale Parameter.

DirectoryListHandlesHeaders

Definiert Kopfzeilen für den ListHandles-Vorgang.

DirectoryListHandlesOptionalParams

Optionale Parameter.

DirectorySetMetadataHeaders

Definiert Kopfzeilen für den SetMetadata-Vorgang.

DirectorySetMetadataOptionalParams

Optionale Parameter.

DirectorySetPropertiesHeaders

Definiert Kopfzeilen für den SetProperties-Vorgang.

DirectorySetPropertiesOptionalParams

Optionale Parameter.

FileAbortCopyHeaders

Definiert Kopfzeilen für den Vorgang "AbortCopy".

FileAbortCopyOptionalParams

Optionale Parameter.

FileCreateHeaders

Definiert Kopfzeilen für den Create-Vorgang.

FileCreateOptionalParams

Optionale Parameter.

FileDeleteHeaders

Definiert Kopfzeilen für den Löschvorgang.

FileDeleteMethodOptionalParams

Optionale Parameter.

FileDownloadHeaders

Definiert Kopfzeilen für den Downloadvorgang.

FileDownloadOptionalParams

Optionale Parameter.

FileForceCloseHandlesHeaders

Definiert Kopfzeilen für den ForceCloseHandles-Vorgang.

FileForceCloseHandlesOptionalParams

Optionale Parameter.

FileGetPropertiesHeaders

Definiert Kopfzeilen für den GetProperties-Vorgang.

FileGetPropertiesOptionalParams

Optionale Parameter.

FileGetRangeListHeaders

Definiert Kopfzeilen für den GetRangeList-Vorgang.

FileGetRangeListOptionalParams

Optionale Parameter.

FileHTTPHeaders

Zusätzliche Parameter für eine Reihe von Vorgängen, z. B. File_create, File_setHTTPHeaders.

FileItem

Ein aufgelistetes Dateielement.

FileListHandlesHeaders

Definiert Kopfzeilen für den ListHandles-Vorgang.

FileListHandlesOptionalParams

Optionale Parameter.

FileProperty

Dateieigenschaften.

FileSetHTTPHeadersHeaders

Definiert Kopfzeilen für den SetHTTPHeaders-Vorgang.

FileSetHTTPHeadersOptionalParams

Optionale Parameter.

FileSetMetadataHeaders

Definiert Kopfzeilen für den SetMetadata-Vorgang.

FileSetMetadataOptionalParams

Optionale Parameter.

FileStartCopyHeaders

Definiert Kopfzeilen für den StartCopy-Vorgang.

FileStartCopyOptionalParams

Optionale Parameter.

FileUploadRangeFromURLHeaders

Definiert Kopfzeilen für uploadRangeFromURL-Vorgang.

FileUploadRangeFromURLOptionalParams

Optionale Parameter.

FileUploadRangeHeaders

Definiert Kopfzeilen für uploadRange-Vorgang.

FileUploadRangeOptionalParams

Optionale Parameter.

FilesAndDirectoriesListSegment

Zusammenfassung für Einträge, die aus dem Verzeichnis aufgelistet werden können.

HandleItem

Ein aufgelistetes Azure Storage-Handle-Element.

ListFilesAndDirectoriesSegmentResponse

Eine Aufzählung von Verzeichnissen und Dateien.

ListHandlesResponse

Eine Aufzählung von Handles.

ListSharesResponse

Eine Aufzählung von Freigaben.

Metrics

Speicheranalysemetriken für den Dateidienst.

Permission

Berechtigung (eine Sicherheitsbeschreibung), die in der Security Descriptor Definition Language (SDDL) beschrieben wird.

Range

Ein Azure Storage-Dateibereich.

RetentionPolicy

Die Aufbewahrungsrichtlinie.

ServiceGetPropertiesHeaders

Definiert Kopfzeilen für den GetProperties-Vorgang.

ServiceGetPropertiesOptionalParams

Optionale Parameter.

ServiceListSharesSegmentHeaders

Definiert Kopfzeilen für den ListSharesSegment-Vorgang.

ServiceListSharesSegmentOptionalParams

Optionale Parameter.

ServiceSetPropertiesHeaders

Definiert Kopfzeilen für den SetProperties-Vorgang.

ServiceSetPropertiesOptionalParams

Optionale Parameter.

ShareCreateHeaders

Definiert Kopfzeilen für den Create-Vorgang.

ShareCreateOptionalParams

Optionale Parameter.

ShareCreatePermissionHeaders

Definiert Kopfzeilen für createPermission-Vorgang.

ShareCreatePermissionOptionalParams

Optionale Parameter.

ShareCreateSnapshotHeaders

Definiert Kopfzeilen für den CreateSnapshot-Vorgang.

ShareCreateSnapshotOptionalParams

Optionale Parameter.

ShareDeleteHeaders

Definiert Kopfzeilen für den Löschvorgang.

ShareDeleteMethodOptionalParams

Optionale Parameter.

ShareGetAccessPolicyHeaders

Definiert Kopfzeilen für den GetAccessPolicy-Vorgang.

ShareGetAccessPolicyOptionalParams

Optionale Parameter.

ShareGetPermissionHeaders

Definiert Kopfzeilen für den GetPermission-Vorgang.

ShareGetPermissionOptionalParams

Optionale Parameter.

ShareGetPropertiesHeaders

Definiert Kopfzeilen für den GetProperties-Vorgang.

ShareGetPropertiesOptionalParams

Optionale Parameter.

ShareGetStatisticsHeaders

Definiert Kopfzeilen für getStatistics-Vorgang.

ShareGetStatisticsOptionalParams

Optionale Parameter.

ShareItem

Ein aufgelistetes Azure Storage-Freigabeelement.

ShareProperties

Eigenschaften einer Freigabe.

ShareSetAccessPolicyHeaders

Definiert Kopfzeilen für den SetAccessPolicy-Vorgang.

ShareSetAccessPolicyOptionalParams

Optionale Parameter.

ShareSetMetadataHeaders

Definiert Kopfzeilen für den SetMetadata-Vorgang.

ShareSetMetadataOptionalParams

Optionale Parameter.

ShareSetQuotaHeaders

Definiert Kopfzeilen für den SetQuota-Vorgang.

ShareSetQuotaOptionalParams

Optionale Parameter.

ShareStats

Statistiken für die Freigabe.

SignedIdentifier

Signierter Bezeichner.

SourceModifiedAccessConditions

Zusätzliche Parameter für uploadRangeFromURL-Vorgang.

StorageError

Eine Schnittstelle, die StorageError darstellt.

StorageServiceProperties

Speicherdiensteigenschaften.

IDownloadFromAzureFileOptions

Option interface for DownloadAzurefileToBuffer.

IUploadToAzureFileOptions

Optionsschnittstelle für uploadFileToAzureFile und uploadSeekableStreamToAzureFile.

IUploadStreamToAzureFileOptions

Option interface for uploadStreamToAzureFile.

IFileAndDirectoryCreateCommonOptions
IFileAndDirectorySetPropertiesCommonOptions
IFileHTTPHeaders
IMetadata
IRetriableReadableStreamOptions

Typaliase

FileDownloadResponse

Enthält Antwortdaten für den Downloadvorgang.

FileGetRangeListResponse

Enthält Antwortdaten für den getRangeList-Vorgang.

ShareGetAccessPolicyResponse

Enthält Antwortdaten für den getAccessPolicy-Vorgang.

ShareGetStatisticsResponse

Enthält Antwortdaten für den getStatistics-Vorgang.

CredentialPolicyCreator

Eine Factoryfunktion, die eine neue CredentialPolicy erstellt, die die bereitgestellte nextPolicy verwendet.

CopyStatusType

Definiert Werte für CopyStatusType. Mögliche Werte sind: 'ausstehend', 'success', 'abgebrochen', 'failed'

DeleteSnapshotsOptionType

Definiert Werte für DeleteSnapshotsOptionType. Mögliche Werte sind: "include"

DirectoryCreateResponse

Enthält Antwortdaten für den Erstellungsvorgang.

DirectoryDeleteResponse

Enthält Antwortdaten für den deleteMethod-Vorgang.

DirectoryForceCloseHandlesResponse

Enthält Antwortdaten für den ForceCloseHandles-Vorgang.

DirectoryGetPropertiesResponse

Enthält Antwortdaten für den getProperties-Vorgang.

DirectoryListFilesAndDirectoriesSegmentResponse

Enthält Antwortdaten für den ListFilesAndDirectoriesSegment-Vorgang.

DirectoryListHandlesResponse

Enthält Antwortdaten für den listHandles-Vorgang.

DirectorySetMetadataResponse

Enthält Antwortdaten für den setMetadata-Vorgang.

DirectorySetPropertiesResponse

Enthält Antwortdaten für den setProperties-Vorgang.

FileAbortCopyResponse

Enthält Antwortdaten für den Vorgang "abortCopy".

FileCreateResponse

Enthält Antwortdaten für den Erstellungsvorgang.

FileDeleteResponse

Enthält Antwortdaten für den deleteMethod-Vorgang.

FileForceCloseHandlesResponse

Enthält Antwortdaten für den ForceCloseHandles-Vorgang.

FileGetPropertiesResponse

Enthält Antwortdaten für den getProperties-Vorgang.

FileListHandlesResponse

Enthält Antwortdaten für den listHandles-Vorgang.

FileRangeWriteType

Definiert Werte für FileRangeWriteType. Mögliche Werte sind: "update", "clear"

FileSetHTTPHeadersResponse

Enthält Antwortdaten für den SetHTTPHeaders-Vorgang.

FileSetMetadataResponse

Enthält Antwortdaten für den setMetadata-Vorgang.

FileStartCopyResponse

Enthält Antwortdaten für den StartCopy-Vorgang.

FileType

Definiert Werte für FileType. Mögliche Werte sind: 'File'

FileUploadRangeFromURLResponse

Enthält Antwortdaten für den UploadRangeFromURL-Vorgang.

FileUploadRangeResponse

Enthält Antwortdaten für den UploadRange-Vorgang.

ListSharesIncludeType

Definiert Werte für ListSharesIncludeType. Mögliche Werte sind: "Snapshots", "Metadata"

ServiceGetPropertiesResponse

Enthält Antwortdaten für den getProperties-Vorgang.

ServiceListSharesSegmentResponse

Enthält Antwortdaten für den listSharesSegment-Vorgang.

ServiceSetPropertiesResponse

Enthält Antwortdaten für den setProperties-Vorgang.

ShareCreatePermissionResponse

Enthält Antwortdaten für den createPermission-Vorgang.

ShareCreateResponse

Enthält Antwortdaten für den Erstellungsvorgang.

ShareCreateSnapshotResponse

Enthält Antwortdaten für den createSnapshot-Vorgang.

ShareDeleteResponse

Enthält Antwortdaten für den deleteMethod-Vorgang.

ShareGetPermissionResponse

Enthält Antwortdaten für den getPermission-Vorgang.

ShareGetPropertiesResponse

Enthält Antwortdaten für den getProperties-Vorgang.

ShareSetAccessPolicyResponse

Enthält Antwortdaten für den setAccessPolicy-Vorgang.

ShareSetMetadataResponse

Enthält Antwortdaten für den setMetadata-Vorgang.

ShareSetQuotaResponse

Enthält Antwortdaten für den setQuota-Vorgang.

StorageErrorCode

Definiert Werte für StorageErrorCode. Mögliche Werte sind: 'AccountAlreadyExists', 'AccountBeingCreated', 'AccountIsDisabled', 'AuthenticationFailed', 'AuthorizationFailure', 'ConditionHeadersNotSupported', 'ConditionNotMet', 'EmptyMetadataKey', 'InsufficientAccountPermissions', 'InternalError', 'InvalidAuthenticationInfo', 'InvalidHeaderValue', 'InvalidHttpVerb', 'InvalidInput', 'InvalidMd5', 'InvalidMetadata', 'InvalidQueryParameterValue', 'InvalidRange', 'InvalidResourceName', 'InvalidUri', ' InvalidXmlDocument', 'InvalidXmlNodeValue', 'Md5Mismatch', 'MetadataTooLarge', 'MissingContentLengthHeader', 'MissingRequiredQueryParameter', 'MissingRequiredHeader', 'MissingRequiredXmlNode', 'MultipleConditionHeadersNotSupported', 'OperationTimedOut', 'OutOfRangeInput', 'OutOfRangeQueryParameterValue', 'RequestBodyTooLarge', 'ResourceTypeMismatch', 'RequestUrlFailedToParse', 'ResourceAlreadyExists', 'ResourceNotFound', 'ServerBusy', 'UnsupportedHeader', ' UnsupportedXmlNode', 'UnsupportedQueryParameter', 'UnsupportedHttpVerb', 'CannotDeleteFileOrDirectory', 'ClientCacheFlushDelay', 'DeletePending', 'DirectoryNotEmpty', 'FileLockConflict', 'InvalidFileOrDirectoryPathName', 'ParentNotFound', 'ReadOnlyAttribute', 'ShareAlreadyExists', 'ShareBeingDeleted', 'ShareDisabled', 'ShareNotFound', 'SharingViolation', 'ShareSnapshotInProgress', 'ShareSnapshotCountExceeded', 'ShareSnapshotOperationNotSupported', ' ShareHasSnapshots', 'ContainerQuotaDowngradeNotAllowed'

FileAttributesPreserveType

Gibt an, dass vorhandene Dateiattribute unverändert bleiben.

FilePermissionInheritType

Gibt an, dass die Dateiberechtigung vom übergeordneten Verzeichnis geerbt wird.

FilePermissionPreserveType

Gibt an, dass der vorhandene Dateiberechtigungswert unverändert bleibt.

TimeNowType

Gibt die Einstellung als Uhrzeit der Anforderung an.

TimePreserveType

Gibt an, dass der vorhandene Zeitwert unverändert bleibt.

Operation

Der Vorgang ist eine asynchrone Funktion, die von Batch ausgeführt und verwaltet werden soll.

OutgoingHandler

OutgoingHandler ist eine asynchrone Funktion, die von BufferScheduler ausgelöst wird.

ReadableStreamGetter

Enumerationen

SASProtocol

Protokolle für generierte SAS.

RetryPolicyType

RetryPolicy-Typen.

Functions

generateAccountSASQueryParameters(IAccountSASSignatureValues, SharedKeyCredential)

NUR IN NODE.JS RUNTIME VERFÜGBAR. Generiert ein <xref:SASQueryParameters> -Objekt, das alle SAS-Abfrageparameter enthält, die zum Erstellen einer tatsächlichen REST-Anforderung erforderlich sind.

generateFileSASQueryParameters(IFileSASSignatureValues, SharedKeyCredential)

NUR IN NODE.JS RUNTIME VERFÜGBAR. Erstellt eine Instanz von SASQueryParameters.

Akzeptiert nur erforderliche Einstellungen, die zum Erstellen einer SAS erforderlich sind. Für optionale Einstellungen legen Sie die entsprechenden Eigenschaften direkt fest, z. B. Berechtigungen, startTime und Bezeichner.

WARNUNG: Wenn kein Bezeichner angegeben wird, sind Berechtigungen und Ablaufzeit erforderlich. Sie MÜSSEN dem Bezeichner oder ablauftime & Berechtigungen manuell einen Wert zuweisen, wenn Sie mit diesem Konstruktor initialisieren.

ipRangeToString(IIPRange)

Generieren Sie die IPRange-Formatzeichenfolge. Beispiel: "8.8.8.8" oder "1.1.1.1-255.255.255.255.255"

rangeToString(IRange)

Generieren Sie eine Bereichszeichenfolge. Beispiel: "bytes=255-" oder "bytes=0-511"

uploadBrowserDataToAzureFile(Aborter, Blob | ArrayBuffer | ArrayBufferView, FileURL, IUploadToAzureFileOptions)

NUR IN BROWSERN VERFÜGBAR. Lädt ein Browser blob/File/ArrayBuffer/ArrayBufferView -Objekt in eine Azure-Datei hoch.

downloadAzureFileToBuffer(Aborter, Buffer, FileURL, number, undefined | number, IDownloadFromAzureFileOptions)

NUR IN NODE.JS RUNTIME VERFÜGBAR. Lädt eine Azure-Datei parallel zu einem Puffer herunter. Offset und Anzahl sind optional, und übergeben Sie 0, damit beide die gesamte Datei herunterladen.

uploadFileToAzureFile(Aborter, string, FileURL, IUploadToAzureFileOptions)

NUR IN NODE.JS RUNTIME VERFÜGBAR. Lädt eine lokale Datei in eine Azure-Datei hoch.

uploadStreamToAzureFile(Aborter, Readable, number, FileURL, number, number, IUploadStreamToAzureFileOptions)

NUR IN NODE.JS RUNTIME VERFÜGBAR. Lädt einen Node.js lesbaren Datenstrom in eine Azure-Datei hoch. Diese Methode versucht, ein Azure zu erstellen, und startet dann das Hochladen von Block nach Block. Die Größe des Abschnitts wird durch bufferSize Parameter definiert. Stellen Sie sicher, dass die potenzielle Größe des Datenstroms die Dateigröße nicht überschreitet.

TIPPS ZUR LEISTUNGSVERBESSERUNG:

  • Für den Eingabestream highWaterMark ist es besser, den gleichen Wert mit dem bufferSize-Parameter festzulegen, wodurch Buffer.concat()-Operationen vermieden werden.
fileAttributesToString(FileSystemAttributes | FileAttributesPreserveType)
fileCreationTimeToString(Date | TimeNowType | TimePreserveType)
fileLastWriteTimeToString(Date | TimeNowType | TimePreserveType)
validateAndSetDefaultsForFileAndDirectoryCreateCommonOptions(IFileAndDirectoryCreateCommonOptions)
validateAndSetDefaultsForFileAndDirectorySetPropertiesCommonOptions(IFileAndDirectorySetPropertiesCommonOptions)
validateFilePermissionOptions(undefined | string, undefined | string)
NewRetryPolicyFactory(IRetryOptions)

Eine Factorymethode, die zum Generieren einer RetryPolicy-Factory verwendet wird.

blobToArrayBuffer(Blob)

Konvertieren Sie ein Browser Blob-Objekt in ArrayBuffer.

appendToURLPath(string, string)

Fügen Sie eine Zeichenfolge an den URL-Pfad an. Entfernt dupliziert "/" vor der Zeichenfolge, wenn der URL-Pfad mit einem "/" endet.

base64decode(string)

Base64-Decodierung.

base64encode(string)

Base64-Codieren.

delay(number, AbortSignalLike, Error)

Angegebenes Zeitintervall für Verzögerung.

escapeURLPath(string)

Reservierte URL-Zeichen müssen für Speicherdienste wie Blob oder Datei ordnungsgemäß escapet sein.

URL-Codierung und Escapestrategie für JSv10-SDKs

Wenn Kunden eine URL-Zeichenfolge an den Konstruktor von XXXURL-Klassen übergeben, ist die URL-Zeichenfolge möglicherweise bereits URL-codiert oder nicht. Vor dem Senden an den Azure Storage-Server muss die URL jedoch codiert werden. Es ist jedoch schwierig, für ein SDK zu erraten, ob die URL-Zeichenfolge codiert wurde oder nicht. Wir haben 2 potenzielle Strategien und haben Strategie 2 für die XXXURL-Konstruktoren ausgewählt.

Strategie 1: Gehen Sie davon aus, dass die Kunden-URL-Zeichenfolge nicht codiert ist und immer URL-Zeichenfolge im SDK codiert ist.

Dies ist die Funktionsweise des älteren V2 SDK, einfach und funktioniert für die meisten Fälle.

  • Wenn die Kunden-URL-Zeichenfolge "http://account.blob.core.windows.net/con/b:"" lautet, codiert das SDK sie in "http://account.blob.core.windows.net/con/b%3A" und an den Server senden. Ein Blob mit dem Namen "b:" wird erstellt.
  • Wenn die Kunden-URL-Zeichenfolge "http://account.blob.core.windows.net/con/b%3A"" lautet, codiert das SDK sie in "http://account.blob.core.windows.net/con/b%253A" und an den Server senden. Ein Blob mit dem Namen "b%3A" wird erstellt.

Aber diese Strategie wird es nicht ermöglichen, ein Blob mit "?" in diesem Namen zu erstellen. Da die Zeichenfolge der Kunden-URL "http://account.blob.core.windows.net/con/blob?name"" lautet, wird der "?name" anstelle des BLOB-Namens als URL-Paramter behandelt. Wenn die Kunden-URL-Zeichenfolge "http://account.blob.core.windows.net/con/blob%3Fname"" lautet, wird ein Blob mit dem Namen "blob%3Fname" erstellt. Das V2 SDK hat dieses Problem nicht, da der Kunde keine vollständige URL angibt, er akzeptiert einen separaten BLOB-Namen und einen codierten URIComponent dafür. Ein SDK kann nicht mit "?" erstellt werden. Wir implementieren also Strategie 2:

Strategie 2: SDK geht nicht davon aus, dass die URL codiert wurde oder nicht. Es wird nur die Sonderzeichen escapeen.

Dies ist die Funktionsweise des V10 Blob Go SDK. Er akzeptiert einen URL-Typ in "Go", und rufen Sie die URL auf. EscapedPath() zum Escapen der Sonderzeichen ohne Escapezeichen.

  • Wenn die Kunden-URL-Zeichenfolge "http://account.blob.core.windows.net/con/b:"" lautet, wird im SDK ":" wie "http://account.blob.core.windows.net/con/b%3A" und an den Server senden. Ein Blob mit dem Namen "b:" wird erstellt.
  • Wenn die Kunden-URL-Zeichenfolge "http://account.blob.core.windows.net/con/b%3A", es gibt keine Sonderzeichen, also senden "http://account.blob.core.windows.net/con/b%3A" zum Server. Ein Blob mit dem Namen "b:" wird erstellt.
  • Wenn die Kunden-URL-Zeichenfolge "http://account.blob.core.windows.net/con/b%253A", es gibt keine Sonderzeichen, also senden "http://account.blob.core.windows.net/con/b%253A" zum Server. Ein Blob mit dem Namen "b%3A" wird erstellt.

Diese Strategie bietet uns Flexibilität, mit allen Sonderzeichen zu erstellen. "%" wird jedoch als Sonderzeichen behandelt, wenn die URL-Zeichenfolge nicht codiert ist, sollte in der URL-Zeichenfolge kein "%" vorhanden sein, andernfalls ist die URL keine gültige URL. Wenn der Kunde ein Blob mit "%" im Blobnamen erstellen muss, verwenden Sie "%25" insead von "%". Genau wie oben im 3. Beispiel. Und die folgenden URL-Zeichenfolgen sind ungültig:

  • „http://account.blob.core.windows.net/con/b%"
  • „http://account.blob.core.windows.net/con/b%2"
  • „http://account.blob.core.windows.net/con/b%G"

Ein weiteres Sonderzeichen ist "?", verwenden Sie "%2F" zum Darstellen eines Blobnamens mit "?" in einer URL-Zeichenfolge.

Strategie für containerName, blobName oder andere spezifische XXXName-Parameter in Methoden wie BlobURL.fromContainerURL(containerURL, blobName)

Wir wenden Strategie 1 an und rufen "encodeURIComponent" für diese Parameter wie blobName auf. Da es sich bei Kunden um einen einfachen Namen anstelle einer URL handelt.

getURLParameter(string, string)

Url-Parameter nach Name abrufen.

getURLPath(string)

Abrufen des URL-Pfads aus einer URL-Zeichenfolge.

getURLQueries(string)

Abrufen von URL-Schlüssel-Wertpaaren aus einer URL-Zeichenfolge.

padStart(string, number, undefined | string)

String.prototype.padStart()

setURLHost(string, string)

Url-Host festlegen.

setURLParameter(string, string, undefined | string)

Festlegen des URL-Parameternamens und -Werts. Wenn der Name in URL-Parametern vorhanden ist, wird der alte Wert durch den Namenschlüssel ersetzt. Wenn kein Wert angegeben wird, wird der Parameter gelöscht.

truncatedISO8061Date(Date, undefined | false | true)

Rundet ein Datum auf Sekunden ab.

streamToBuffer(ReadableStream, Buffer, number, number, undefined | string)

Liest einen lesbaren Datenstrom in puffer. Füllen Sie den Puffer von Offset bis Ende aus.

Details zur Funktion

generateAccountSASQueryParameters(IAccountSASSignatureValues, SharedKeyCredential)

NUR IN NODE.JS RUNTIME VERFÜGBAR. Generiert ein <xref:SASQueryParameters> -Objekt, das alle SAS-Abfrageparameter enthält, die zum Erstellen einer tatsächlichen REST-Anforderung erforderlich sind.

function generateAccountSASQueryParameters(accountSASSignatureValues: IAccountSASSignatureValues, sharedKeyCredential: SharedKeyCredential)

Parameter

accountSASSignatureValues
IAccountSASSignatureValues
sharedKeyCredential
SharedKeyCredential

Gibt zurück

generateFileSASQueryParameters(IFileSASSignatureValues, SharedKeyCredential)

NUR IN NODE.JS RUNTIME VERFÜGBAR. Erstellt eine Instanz von SASQueryParameters.

Akzeptiert nur erforderliche Einstellungen, die zum Erstellen einer SAS erforderlich sind. Für optionale Einstellungen legen Sie die entsprechenden Eigenschaften direkt fest, z. B. Berechtigungen, startTime und Bezeichner.

WARNUNG: Wenn kein Bezeichner angegeben wird, sind Berechtigungen und Ablaufzeit erforderlich. Sie MÜSSEN dem Bezeichner oder ablauftime & Berechtigungen manuell einen Wert zuweisen, wenn Sie mit diesem Konstruktor initialisieren.

function generateFileSASQueryParameters(fileSASSignatureValues: IFileSASSignatureValues, sharedKeyCredential: SharedKeyCredential)

Parameter

fileSASSignatureValues
IFileSASSignatureValues
sharedKeyCredential
SharedKeyCredential

Gibt zurück

ipRangeToString(IIPRange)

Generieren Sie die IPRange-Formatzeichenfolge. Beispiel: "8.8.8.8" oder "1.1.1.1-255.255.255.255.255"

function ipRangeToString(ipRange: IIPRange)

Parameter

ipRange
IIPRange

Gibt zurück

string

rangeToString(IRange)

Generieren Sie eine Bereichszeichenfolge. Beispiel: "bytes=255-" oder "bytes=0-511"

function rangeToString(iRange: IRange)

Parameter

iRange
IRange

Gibt zurück

string

uploadBrowserDataToAzureFile(Aborter, Blob | ArrayBuffer | ArrayBufferView, FileURL, IUploadToAzureFileOptions)

NUR IN BROWSERN VERFÜGBAR. Lädt ein Browser blob/File/ArrayBuffer/ArrayBufferView -Objekt in eine Azure-Datei hoch.

function uploadBrowserDataToAzureFile(aborter: Aborter, browserData: Blob | ArrayBuffer | ArrayBufferView, fileURL: FileURL, options?: IUploadToAzureFileOptions)

Parameter

aborter
Aborter

Erstellen einer neuen Aborter-Instanz mit "Aborter.none" oder "Aborter.timeout(), goto documents of Aborter for more examples about request cancellation

browserData

Blob | ArrayBuffer | ArrayBufferView

Blob, Datei, ArrayBuffer oder ArrayBufferView

fileURL
FileURL

Gibt zurück

Promise<void>

downloadAzureFileToBuffer(Aborter, Buffer, FileURL, number, undefined | number, IDownloadFromAzureFileOptions)

NUR IN NODE.JS RUNTIME VERFÜGBAR. Lädt eine Azure-Datei parallel zu einem Puffer herunter. Offset und Anzahl sind optional, und übergeben Sie 0, damit beide die gesamte Datei herunterladen.

function downloadAzureFileToBuffer(aborter: Aborter, buffer: Buffer, fileURL: FileURL, offset: number, count?: undefined | number, options?: IDownloadFromAzureFileOptions)

Parameter

aborter
Aborter

Erstellen einer neuen Aborter-Instanz mit "Aborter.none" oder "Aborter.timeout(), goto documents of Aborter for more examples about request cancellation

buffer

Buffer

Puffer, der gefüllt werden soll, muss die Länge größer sein als die Anzahl

fileURL
FileURL

Ein FileURL-Objekt

offset

number

Von welcher Position der Azure-Datei heruntergeladen werden soll

count

undefined | number

Gibt zurück

Promise<void>

uploadFileToAzureFile(Aborter, string, FileURL, IUploadToAzureFileOptions)

NUR IN NODE.JS RUNTIME VERFÜGBAR. Lädt eine lokale Datei in eine Azure-Datei hoch.

function uploadFileToAzureFile(aborter: Aborter, filePath: string, fileURL: FileURL, options?: IUploadToAzureFileOptions)

Parameter

aborter
Aborter

Erstellen einer neuen Aborter-Instanz mit "Aborter.none" oder "Aborter.timeout(), goto documents of Aborter for more examples about request cancellation

filePath

string

Vollständiger Pfad der lokalen Datei

fileURL
FileURL

FileURL

Gibt zurück

Promise<void>

uploadStreamToAzureFile(Aborter, Readable, number, FileURL, number, number, IUploadStreamToAzureFileOptions)

NUR IN NODE.JS RUNTIME VERFÜGBAR. Lädt einen Node.js lesbaren Datenstrom in eine Azure-Datei hoch. Diese Methode versucht, ein Azure zu erstellen, und startet dann das Hochladen von Block nach Block. Die Größe des Abschnitts wird durch bufferSize Parameter definiert. Stellen Sie sicher, dass die potenzielle Größe des Datenstroms die Dateigröße nicht überschreitet.

TIPPS ZUR LEISTUNGSVERBESSERUNG:

  • Für den Eingabestream highWaterMark ist es besser, den gleichen Wert mit dem bufferSize-Parameter festzulegen, wodurch Buffer.concat()-Operationen vermieden werden.
function uploadStreamToAzureFile(aborter: Aborter, stream: Readable, size: number, fileURL: FileURL, bufferSize: number, maxBuffers: number, options?: IUploadStreamToAzureFileOptions)

Parameter

aborter
Aborter

Erstellen einer neuen Aborter-Instanz mit "Aborter.none" oder "Aborter.timeout(), goto documents of Aborter for more examples about request cancellation

stream

Readable

Node.js lesbarer Datenstrom. Muss kleiner oder gleich Dateigröße sein.

size

number

Größe der zu erstellenden Datei. Maxium-Größe zulässig ist 1 TB. Wenn dieser Wert größer als die Datenstromgröße ist, gibt es leere Bytes im Dateischwanz.

fileURL
FileURL

Eine FileURL-Instanz

bufferSize

number

Größe jedes in Bytes zugewiesenen Puffers, auch die Block-/Bereichsgröße während der hochgeladenen Datei. Größe muss > 0 und <= 4 * 1024 * 1024 (4 MB)

maxBuffers

number

Max. Puffer werden während des Uploads zugewiesen, positive Korrelation mit maximaler Uploadkoncurrency

Gibt zurück

Promise<void>

fileAttributesToString(FileSystemAttributes | FileAttributesPreserveType)

function fileAttributesToString(fileAttributes: FileSystemAttributes | FileAttributesPreserveType)

Parameter

Gibt zurück

string

fileCreationTimeToString(Date | TimeNowType | TimePreserveType)

function fileCreationTimeToString(time: Date | TimeNowType | TimePreserveType)

Parameter

Gibt zurück

string

fileLastWriteTimeToString(Date | TimeNowType | TimePreserveType)

function fileLastWriteTimeToString(time: Date | TimeNowType | TimePreserveType)

Parameter

Gibt zurück

string

validateAndSetDefaultsForFileAndDirectoryCreateCommonOptions(IFileAndDirectoryCreateCommonOptions)

function validateAndSetDefaultsForFileAndDirectoryCreateCommonOptions(options: IFileAndDirectoryCreateCommonOptions)

Parameter

Gibt zurück

validateAndSetDefaultsForFileAndDirectorySetPropertiesCommonOptions(IFileAndDirectorySetPropertiesCommonOptions)

function validateAndSetDefaultsForFileAndDirectorySetPropertiesCommonOptions(options: IFileAndDirectorySetPropertiesCommonOptions)

Parameter

Gibt zurück

validateFilePermissionOptions(undefined | string, undefined | string)

function validateFilePermissionOptions(filePermission?: undefined | string, filePermissionKey?: undefined | string)

Parameter

filePermission

undefined | string

filePermissionKey

undefined | string

NewRetryPolicyFactory(IRetryOptions)

Eine Factorymethode, die zum Generieren einer RetryPolicy-Factory verwendet wird.

function NewRetryPolicyFactory(retryOptions?: IRetryOptions)

Parameter

retryOptions
IRetryOptions

Gibt zurück

RequestPolicyFactory

blobToArrayBuffer(Blob)

Konvertieren Sie ein Browser Blob-Objekt in ArrayBuffer.

function blobToArrayBuffer(blob: Blob)

Parameter

blob

Blob

Gibt zurück

Promise<ArrayBuffer>

appendToURLPath(string, string)

Fügen Sie eine Zeichenfolge an den URL-Pfad an. Entfernt dupliziert "/" vor der Zeichenfolge, wenn der URL-Pfad mit einem "/" endet.

function appendToURLPath(url: string, name: string)

Parameter

url

string

Quell-URL-Zeichenfolge

name

string

Zeichenfolge, die an die URL angefügt werden soll

Gibt zurück

string

Eine aktualisierte URL-Zeichenfolge

base64decode(string)

Base64-Decodierung.

function base64decode(encodedString: string)

Parameter

encodedString

string

Gibt zurück

string

base64encode(string)

Base64-Codieren.

function base64encode(content: string)

Parameter

content

string

Gibt zurück

string

delay(number, AbortSignalLike, Error)

Angegebenes Zeitintervall für Verzögerung.

function delay(timeInMs: number, aborter?: AbortSignalLike, abortError?: Error)

Parameter

timeInMs

number

aborter

AbortSignalLike

abortError

Error

Gibt zurück

Promise<unknown>

escapeURLPath(string)

Reservierte URL-Zeichen müssen für Speicherdienste wie Blob oder Datei ordnungsgemäß escapet sein.

URL-Codierung und Escapestrategie für JSv10-SDKs

Wenn Kunden eine URL-Zeichenfolge an den Konstruktor von XXXURL-Klassen übergeben, ist die URL-Zeichenfolge möglicherweise bereits URL-codiert oder nicht. Vor dem Senden an den Azure Storage-Server muss die URL jedoch codiert werden. Es ist jedoch schwierig, für ein SDK zu erraten, ob die URL-Zeichenfolge codiert wurde oder nicht. Wir haben 2 potenzielle Strategien und haben Strategie 2 für die XXXURL-Konstruktoren ausgewählt.

Strategie 1: Gehen Sie davon aus, dass die Kunden-URL-Zeichenfolge nicht codiert ist und immer URL-Zeichenfolge im SDK codiert ist.

Dies ist die Funktionsweise des älteren V2 SDK, einfach und funktioniert für die meisten Fälle.

  • Wenn die Kunden-URL-Zeichenfolge "http://account.blob.core.windows.net/con/b:"" lautet, codiert das SDK sie in "http://account.blob.core.windows.net/con/b%3A" und an den Server senden. Ein Blob mit dem Namen "b:" wird erstellt.
  • Wenn die Kunden-URL-Zeichenfolge "http://account.blob.core.windows.net/con/b%3A"" lautet, codiert das SDK sie in "http://account.blob.core.windows.net/con/b%253A" und an den Server senden. Ein Blob mit dem Namen "b%3A" wird erstellt.

Aber diese Strategie wird es nicht ermöglichen, ein Blob mit "?" in diesem Namen zu erstellen. Da die Zeichenfolge der Kunden-URL "http://account.blob.core.windows.net/con/blob?name"" lautet, wird der "?name" anstelle des BLOB-Namens als URL-Paramter behandelt. Wenn die Kunden-URL-Zeichenfolge "http://account.blob.core.windows.net/con/blob%3Fname"" lautet, wird ein Blob mit dem Namen "blob%3Fname" erstellt. Das V2 SDK hat dieses Problem nicht, da der Kunde keine vollständige URL angibt, er akzeptiert einen separaten BLOB-Namen und einen codierten URIComponent dafür. Ein SDK kann nicht mit "?" erstellt werden. Wir implementieren also Strategie 2:

Strategie 2: SDK geht nicht davon aus, dass die URL codiert wurde oder nicht. Es wird nur die Sonderzeichen escapeen.

Dies ist die Funktionsweise des V10 Blob Go SDK. Er akzeptiert einen URL-Typ in "Go", und rufen Sie die URL auf. EscapedPath() zum Escapen der Sonderzeichen ohne Escapezeichen.

  • Wenn die Kunden-URL-Zeichenfolge "http://account.blob.core.windows.net/con/b:"" lautet, wird im SDK ":" wie "http://account.blob.core.windows.net/con/b%3A" und an den Server senden. Ein Blob mit dem Namen "b:" wird erstellt.
  • Wenn die Kunden-URL-Zeichenfolge "http://account.blob.core.windows.net/con/b%3A", es gibt keine Sonderzeichen, also senden "http://account.blob.core.windows.net/con/b%3A" zum Server. Ein Blob mit dem Namen "b:" wird erstellt.
  • Wenn die Kunden-URL-Zeichenfolge "http://account.blob.core.windows.net/con/b%253A", es gibt keine Sonderzeichen, also senden "http://account.blob.core.windows.net/con/b%253A" zum Server. Ein Blob mit dem Namen "b%3A" wird erstellt.

Diese Strategie bietet uns Flexibilität, mit allen Sonderzeichen zu erstellen. "%" wird jedoch als Sonderzeichen behandelt, wenn die URL-Zeichenfolge nicht codiert ist, sollte in der URL-Zeichenfolge kein "%" vorhanden sein, andernfalls ist die URL keine gültige URL. Wenn der Kunde ein Blob mit "%" im Blobnamen erstellen muss, verwenden Sie "%25" insead von "%". Genau wie oben im 3. Beispiel. Und die folgenden URL-Zeichenfolgen sind ungültig:

  • „http://account.blob.core.windows.net/con/b%"
  • „http://account.blob.core.windows.net/con/b%2"
  • „http://account.blob.core.windows.net/con/b%G"

Ein weiteres Sonderzeichen ist "?", verwenden Sie "%2F" zum Darstellen eines Blobnamens mit "?" in einer URL-Zeichenfolge.

Strategie für containerName, blobName oder andere spezifische XXXName-Parameter in Methoden wie BlobURL.fromContainerURL(containerURL, blobName)

Wir wenden Strategie 1 an und rufen "encodeURIComponent" für diese Parameter wie blobName auf. Da es sich bei Kunden um einen einfachen Namen anstelle einer URL handelt.

function escapeURLPath(url: string)

Parameter

url

string

Gibt zurück

string

getURLParameter(string, string)

Url-Parameter nach Name abrufen.

function getURLParameter(url: string, name: string)

Parameter

url

string

name

string

Gibt zurück

string | string[] | undefined

getURLPath(string)

Abrufen des URL-Pfads aus einer URL-Zeichenfolge.

function getURLPath(url: string)

Parameter

url

string

Quell-URL-Zeichenfolge

Gibt zurück

string | undefined

getURLQueries(string)

Abrufen von URL-Schlüssel-Wertpaaren aus einer URL-Zeichenfolge.

function getURLQueries(url: string)

Parameter

url

string

Gibt zurück

[key: string]: string

padStart(string, number, undefined | string)

String.prototype.padStart()

function padStart(currentString: string, targetLength: number, padString?: undefined | string)

Parameter

currentString

string

targetLength

number

padString

undefined | string

Gibt zurück

string

setURLHost(string, string)

Url-Host festlegen.

function setURLHost(url: string, host: string)

Parameter

url

string

Quell-URL-Zeichenfolge

host

string

Neue Hostzeichenfolge

Gibt zurück

string

Eine aktualisierte URL-Zeichenfolge

setURLParameter(string, string, undefined | string)

Festlegen des URL-Parameternamens und -Werts. Wenn der Name in URL-Parametern vorhanden ist, wird der alte Wert durch den Namenschlüssel ersetzt. Wenn kein Wert angegeben wird, wird der Parameter gelöscht.

function setURLParameter(url: string, name: string, value?: undefined | string)

Parameter

url

string

Quell-URL-Zeichenfolge

name

string

Parametername

value

undefined | string

Gibt zurück

string

Eine aktualisierte URL-Zeichenfolge

truncatedISO8061Date(Date, undefined | false | true)

Rundet ein Datum auf Sekunden ab.

function truncatedISO8061Date(date: Date, withMilliseconds?: undefined | false | true)

Parameter

date

Date

withMilliseconds

undefined | false | true

Gibt zurück

string

Datumszeichenfolge im ISO8061 Format mit oder ohne Komponente 7 Millisekunden

streamToBuffer(ReadableStream, Buffer, number, number, undefined | string)

Liest einen lesbaren Datenstrom in puffer. Füllen Sie den Puffer von Offset bis Ende aus.

function streamToBuffer(stream: ReadableStream, buffer: Buffer, offset: number, end: number, encoding?: undefined | string)

Parameter

stream

ReadableStream

Ein Node.js lesbarer Datenstrom

buffer

Buffer

Zu füllende Puffer, Länge muss >= Offset

offset

number

Ab welcher Position im Puffer gefüllt werden soll, einschließlich

end

number

Für welche Position im Puffer gefüllt werden soll, exklusiv

encoding

undefined | string

Gibt zurück

Promise<void>