NowAttachmentMetadata-Struktur – iOS
Die NowAttachmentMetadata- Struktur bietet Funktionen, mit denen Sie Anhangmetadaten codieren und verwalten können.
| Name | Typ | Beschreibung |
|---|---|---|
| durchschnittsbildfarbe | Zeichenfolge | Die dominanteste Farbe im zugeordneten Bild. |
| BlockgrößeInBytes | Ganzzahl | Größe von des Blocks. Einheit: Byte |
| komprimiertGröß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 |
| imageWidth | Ganzzahl | Breite des Bildes. Einheit: Pixel |
| istkomprimiert | Boolean | Kennzeichnung, die angibt, ob die Anhangdatei komprimiert ist. Mögliche Werte:
|
| mimeType | Zeichenfolge | MIME-Typ des Anhangs. |
| modificationCount | Ganzzahl | Anzahl der Male, die der Anhang geändert wurde. |
| 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 Instanz ServiceNow 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 (an Encoder: Encoder)
Codiert den aktuellen Objektwert mit dem angegebenen Encoder in Daten.
Wenn das Objekt nicht in Daten codiert werden kann, codiert der Encoder 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 (von 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 vom 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)