NowAttachment-Struktur – iOS

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 1 Minute Lesedauer
  • Die NowAttachment- Struktur bietet Funktionen, mit denen Sie Anhänge durch Vergleich ihres berechneten Hashs validieren können.

    Tabelle : 1. Eigenschaften
    Name Typ Beschreibung
    Daten Daten Anhangdaten.
    hash Zeichenfolge Berechneter Digest für die Anhangdaten.

    Dieser berechnete Digest wird verwendet, um den Anhang zu validieren, indem er mit dem bekannten Digest verglichen wird, der in den Metadaten des Anhangsgespeichert ist. Die Berechnung des berechneten Digest ist teuer. Vermeiden Sie es, es in der Benutzeroberfläche zu verwenden. Erwägen Sie stattdessen die Verwendung der Hash-Eigenschaft in der NowAttachmentMetadata -Klasse. Wenn Sie den berechneten Hash verwenden müssen, gehen Sie sparsam damit um, und erwägen Sie, ihn zwischenzuspeichern.

    Metadaten NowAttachmentMetadata Metadaten, die dem Anhang zugeordnet sind.

    NowAttachment – validieren()

    Validiert den Anhang, indem der berechnete Hash für die Anhangdaten mit dem in den Anhangmetadaten gespeicherten Digest verglichen wird.

    Tabelle : 2. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 3. Ergebnisse
    Typ Beschreibung
    Boolean Kennzeichnung, die angibt, ob der Anhang gültig ist.
    Mögliche Werte:
    • true: Anhang ist gültig.
    • false: Anhang ist ungültig.

    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)
                
    if !attachment.validate() {
      throw NowDataError.attachmentValidation
    }
    // Attachment is valid
    return attachment