NowAttachment 구조 - iOS
NowAttachment 구조는 계산된 해시를 비교하여 첨부 파일의 유효성을 검사할 수 있는 함수를 제공합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 데이터 | 데이터 | 첨부 파일 데이터입니다. |
| 해시 | 문자열 | 첨부 파일 데이터에 대해 계산된 다이제스트입니다. 이 계산된 다이제스트는 첨부 파일 메타데이터에 저장된 알려진 다이제스트와 비교하여 첨부 파일의 유효성을 검사하는 데 사용됩니다. 계산된 다이제스트를 계산하는 것은 비용이 많이 듭니다. UI에서 사용하지 마십시오. 대신 NowAttachmentMetadata 클래스의 hash 속성을 사용하는 것이 좋습니다. 계산된 해시를 사용해야 하는 경우 드물게 사용하고 캐싱하는 것이 좋습니다. |
| metadata | NowAttachmentMetadata | 첨부 파일과 연결된 메타데이터입니다. |
NowAttachment - validate()
첨부 파일 데이터에 대해 계산된 해시를 첨부 파일 메타데이터에 저장된 다이제스트와 비교하여 첨부 파일의 유효성을 확인합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 부울 | 첨부 파일이 유효한지 여부를 나타내는 플래그입니다. 가능한 값:
|
다음 코드 예제에서는 이 함수를 호출하는 방법을 보여 줍니다.
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