NowAttachmentMetadata-Struktur – iOS
Die NowAttachmentMetadata- Struktur bietet Funktionen, mit denen Sie Anhangmetadaten codieren und verwalten können.
| Name | Typ | Beschreibung |
|---|---|---|
| durchschn. ImageColor | Zeichenfolge | Dominanteste Farbe im zugeordneten Bild. |
| ChunkSizeInBytes | Ganzzahl | Größe von Block. Einheit: Byte |
| komprimierteGrößeInBytes | Ganzzahl | Komprimierte Größe des Anhangs. Einheit: Byte |
| erstellt | Datum | Datum, an dem der Anhang erstellt wurde. |
| Erstellt von | Zeichenfolge | Entität, die den Anhang erstellt hat. |
| Download | URL | URL des Anhangs in der Instanz ServiceNow. |
| fileName | Zeichenfolge | Name der Anhangdatei. |
| hash | Zeichenfolge | Erwarteter SHA256-Digest für den Anhang. Ein heruntergeladener Anhang wird validiert, indem sein berechneter Digest mit diesem SHA256-Digest verglichen wird. |
| imageHeight | Ganzzahl | Höhe des Bildes. Einheit: Pixel |
| Bildbreite | Ganzzahl | Breite des Bildes. Einheit: Pixel |
| ist komprimiert | Boolean | Kennzeichnung, die angibt, ob die Anhangdatei komprimiert ist. Mögliche Werte:
|
| mimeType | Zeichenfolge | MIME-Typ des Anhangs. |
| modifyCount | Ganzzahl | Anzahl der Änderungen des Anhangs. |
| sizeInBytes | Ganzzahl | Größe des Anhangs. Einheit: Byte |
| sourceSysId | Zeichenfolge | Sys_id der Anhangdatei. |
| sourceTableName | Zeichenfolge | Name der Quelltabelle, in der sich der Anhang befindet. |
| Status | Verfügbarkeitsstatus, z. B. „Bedingt“, „Nicht verfügbar“, „Verfügbar“ und „Ausstehend“. | |
| sysId | Zeichenfolge | Eindeutige 32-stellige Globally Unique ID (GUID), die jeden Datensatz in einer ServiceNow -Instanz identifiziert. |
| tags | Zeichenfolge | Liste der Tags, die dem Anhang zugeordnet sind. |
| aktualisiert | Datum | Datum, an dem der Anhang zuletzt geändert wurde. |
| updatedBy | Zeichenfolge | Entität, die den Anhang aktualisiert hat. |
NowAttachmentMetadata – encode(to Encoder: Encoder)
Codiert den aktuellen Objektwert mit dem angegebenen Encoder in Daten.
Wenn das Objekt nicht in Daten codiert werden kann, codiert der Codierer stattdessen einen leeren Schlüsselcontainer. Diese Funktion löst auch einen Fehler aus, wenn Werte für das Format des angegebenen Encoders ungültig sind.
| Name | Typ | Beschreibung |
|---|---|---|
| an Encoder | Encoder | Codierer, der die Struktur der codierten Ausgabe definiert. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.
let query = "active=true^short_descriptionLIKEbroken"
let filter = Filter(query: query)
metadataPublisher(filter: filter, limit: 1)
private func metadataPublisher(filter: Filter?, limit: Int?) {
let publisher = attachmentService.attachmentMetadata(filter: filter, limit: limit)
publisher
.receive(on: DispatchQueue.main)
.encode(encoder: JSONEncoder())
.sink { [weak self] completion in
if case let .failure(error) = completion {
// attachment published failed, return NowDataError
}
} receiveValue: { [weak self] (data) in
// Attachment published successful, return data
}
.store(in: &subscriptions)
}
NowAttachmentMetadata – init(from decoder: Decoder)
Erstellt eine neue NowAttachmentMetadata-Instanz, indem Daten aus dem angegebenen Decoder in ein Objekt decodiert werden.
Diese Methode löst einen Fehler aus, wenn das Lesen aus dem Decoder fehlschlägt oder wenn die gelesenen Daten beschädigt oder anderweitig ungültig sind.
| Name | Typ | Beschreibung |
|---|---|---|
| -Decoder | Decoder | Decoder, aus dem Daten gelesen werden sollen. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.
guard
let metadataHeader = response.httpResponse?.value(forHTTPHeaderField: NowAttachment.attachmentMetadataHeaderKey),
let metadataHeaderData = metadataHeader.data(using: .utf8) else {
throw NowDataError.missingAttachmentMetadata
}
let metadata = try coder.decode(NowAttachmentMetadata.self, from: metadataHeaderData)
let attachment = NowAttachment(metadata: metadata, data: response.data)