---
sourceDocument: Referência de API do Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Referência de API do Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Estrutura do NowAttachment - iOS

# Estrutura do NowAttachment - iOS {#ariaid-title1}

* Versão de lançamento: Xanadu
* 
* Atualizado 1 de ago. de 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 1 min. de leitura

A estrutura NowAttachment fornece funções que permitem validar anexos comparando o hash calculado.
{#NowAttachmentiOSStructure__table_vx2_klw_5pb__entry__3}

| 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](https://servicenow-prod.fluidtopics.net/tpZkggMmhwrV6AnS9BPRSA#NAttachiOS-validate "Valida o anexo comparando o hash calculado dos dados do anexo com o resumo armazenado nos metadados do anexo.") o anexo, comparando-o com o resumo conhecido armazenado nos [metadados do anexo](https://servicenow-prod.fluidtopics.net/phLzcUqCpZb1cYO_ycbXMA#NowAttachmentMetadataiOSStructure "A estrutura NowAttachmentMetadata fornece funções que permitem codificar e gerenciar metadados de anexo."). Calcular o resumo calculado é caro; evite usá-lo na IU. Em vez disso, considere usar a propriedade hash na classe [NowAttachmentMetadata](https://servicenow-prod.fluidtopics.net/phLzcUqCpZb1cYO_ycbXMA#NowAttachmentMetadataiOSStructure "A estrutura NowAttachmentMetadata fornece funções que permitem codificar e gerenciar metadados de anexo."). Se você precisar usar o hash calculado, use-o com moderação e considere armazená-lo em cache. |
| metadados | [NowAttachmentMetadata](https://servicenow-prod.fluidtopics.net/phLzcUqCpZb1cYO_ycbXMA#NowAttachmentMetadataiOSStructure "A estrutura NowAttachmentMetadata fornece funções que permitem codificar e gerenciar metadados de anexo.") | Metadados associados ao anexo. |
[Tabela 1. Propriedades]

{#NowAttachmentiOSStructure__table_vx2_klw_5pb}

## NowAttachment - validar () {#ariaid-title2}

Valida o anexo comparando o hash calculado dos dados do anexo com o resumo armazenado nos metadados do anexo.
{#NAttachiOS-validate__table_ovt_cgr_5pb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 2. Parâmetros]

{#NAttachiOS-validate__table_ovt_cgr_5pb} {#NAttachiOS-validate__table_pvt_cgr_5pb__entry__2}

| 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. {#NAttachiOS-validate__ul_ohb_htf_cqb} |
[Tabela 3. Retorna]

{#NAttachiOS-validate__table_pvt_cgr_5pb}  
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


