Estrutura do NowAttachment - iOS

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 1 min. de leitura
  • A estrutura NowAttachment fornece funções que permitem validar anexos comparando o hash calculado.

    Tabela 1. Propriedades
    Nome Tipo Descrição
    dados Dados Dados do anexo.
    hash Cadeia de caracteres Resumo calculado para os dados do anexo.

    Este resumo calculado é usado para validar o anexo, comparando-o com o resumo conhecido armazenado nos metadados do anexo. Calcular o resumo calculado é caro; evite usá-lo na IU. Em vez disso, considere usar a propriedade hash na classe NowAttachmentMetadata. Se você precisar usar o hash calculado, use-o com moderação e considere armazená-lo em cache.

    metadados NowAttachmentMetadata Metadados associados ao anexo.

    NowAttachment - validar ()

    Valida o anexo comparando o hash calculado dos dados do anexo com o resumo armazenado nos metadados do anexo.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 3. Retorna
    Tipo Descrição
    Booliano Sinalizador que indica se o anexo é válido.
    Valores possíveis:
    • verdadeiro: o anexo é válido.
    • falso: o anexo é inválido.

    O exemplo de código a seguir mostra como chamar esta função.

    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