NowAttachment 構造:iOS

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む2読むのに数分
  • NowAttachment 構造体には、計算されたハッシュを比較することによって添付ファイルを検証できる関数が用意されています。

    表 : 1. プロパティ
    名前 タイプ 説明
    データ データ 添付ファイルデータ。
    ハッシュ 文字列 添付ファイルデータの計算済みダイジェスト。

    この計算されたダイジェストは、NowAttachment - validate()添付ファイルを添付ファイルメタデータに格納されている既知のダイジェストと比較して検証するために使用されます。計算されたダイジェストの計算にはコストがかかります。UI では使用しないでください。代わりに、 NowAttachmentMetadata クラスでハッシュプロパティを使用することを検討してください。計算されたハッシュを使用する必要がある場合は、控えめに使用し、キャッシュすることを検討してください。

    metadata NowAttachmentMetadata 添付ファイルに関連付けられたメタデータ。

    NowAttachment - validate()

    添付ファイルデータの計算されたハッシュを添付ファイルメタデータに格納されているダイジェストと比較して、添付ファイルを検証します。

    表 : 2. パラメーター
    名前 タイプ 説明
    なし
    表 : 3. 返される内容
    タイプ 説明
    ブール 添付ファイルが有効かどうかを示すフラグ。
    可能な値:
    • true:添付ファイルは有効です。
    • false:添付ファイルは無効です。

    次のコード例は、この関数を呼び出す方法を示しています。

    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