메시지 삭제(Azure Storage)

작업은 Delete Message 큐에서 지정된 메시지를 삭제합니다.

요청

다음과 같이 요청을 생성할 Delete Message 수 있습니다. HTTPS를 사용하는 것이 좋습니다.

메서드 요청 URI HTTP 버전
DELETE https://myaccount.queue.core.windows.net/myqueue/messages/messageid?popreceipt=string-value HTTP/1.1

을 스토리지 계정의 이름으로, myqueue 큐의 이름으로, string-value 메시지를 삭제하기 위해 가져온 팝 영수증 값으로 바꿉 myaccount 니다.

에뮬레이트된 스토리지 서비스 URI

에뮬레이트된 스토리지 서비스에 대해 요청할 때 에뮬레이터 호스트 이름 및 Azure Queue Storage 포트를 로 127.0.0.1:10001지정한 다음 에뮬레이트된 스토리지 계정 이름을 지정합니다.

메서드 요청 URI HTTP 버전
DELETE http://127.0.0.1:10001/devstoreaccount1/myqueue/messages/messageid?popreceipt=string-value HTTP/1.1

URI 매개 변수

요청 URI에는 다음 매개 변수가 지원됩니다.

매개 변수 Description
popreceipt 필수 요소. 메시지 가져오기 또는 메시지 업데이트 작업에 대한 이전 호출에서 반환된 유효한 팝 수신 값입니다.
timeout 선택 사항입니다. timeout 매개 변수는 초 단위로 표시됩니다. 자세한 내용은 Queue Storage 작업에 대한 시간 제한 설정을 참조하세요.

요청 헤더

다음 표에서는 필수 요청 헤더와 선택적 요청 헤더에 대해 설명합니다.

요청 헤더 Description
Authorization 필수 요소. 권한 부여 체계, 계정 이름 및 서명을 지정합니다. 자세한 내용은 Azure Storage에 대한 요청 권한 부여를 참조하세요.
Date 또는 x-ms-date 필수 요소. 요청에 대한 UTC(협정 세계시)를 지정합니다. 자세한 내용은 Azure Storage에 대한 요청 권한 부여를 참조하세요.
x-ms-version 선택 사항입니다. 이 요청에 사용할 작업의 버전을 지정합니다. 자세한 내용은 Azure Storage 서비스에 대한 버전 관리를 참조하세요.
x-ms-client-request-id 선택 사항입니다. 로깅이 구성될 때 로그에 기록되는 1키비바이트(KiB) 문자 제한을 사용하여 클라이언트에서 생성된 불투명 값을 제공합니다. 이 헤더를 사용하여 클라이언트 쪽 활동과 서버가 수신하는 요청의 상관 관계를 지정하는 것이 좋습니다. 자세한 내용은 Azure Queue Storage 모니터링을 참조하세요.

요청 본문

없음

응답

응답에는 HTTP 상태 코드 및 응답 헤더 집합이 포함되어 있습니다.

상태 코드

작업이 성공하면 상태 코드 204(콘텐츠 없음)이 반환됩니다. 상태 코드에 대한 자세한 내용은 상태 및 오류 코드를 참조하세요.

응답 헤더

이 작업의 응답에는 다음과 같은 헤더가 포함됩니다. 응답에는 추가 표준 HTTP 헤더도 포함됩니다. 모든 표준 헤더는 HTTP/1.1 프로토콜 사양을 준수합니다.

요청 헤더 Description
x-ms-request-id 이 헤더는 만들어진 요청을 고유하게 식별하며 요청 문제 해결에 사용할 수 있습니다. 자세한 내용은 API 작업 문제 해결을 참조하세요.
x-ms-version 요청을 실행하는 데 사용되는 Queue Storage의 버전을 나타냅니다. 이 헤더는 2009-09-19 버전 이상에 대해 수행된 요청에 대해 반환됩니다.
Date 응답이 시작된 시간을 나타내는 UTC 날짜/시간 값입니다. 서비스는 이 값을 생성합니다.
x-ms-client-request-id 이 헤더를 사용하여 요청 및 해당 응답 문제를 해결할 수 있습니다. 이 헤더의 값은 요청에 있는 경우 헤더 값 x-ms-client-request-id 과 같습니다. 값은 최대 1,024자 표시 ASCII 문자입니다. 헤더가 x-ms-client-request-id 요청에 없는 경우 이 헤더는 응답에 존재하지 않습니다.

응답 본문

없음

권한 부여

계정 소유자는 이 작업을 수행할 수 있습니다. 또한 이 작업을 수행할 수 있는 권한이 있는 공유 액세스 서명이 있는 사람은 누구나 수행할 수 있습니다.

설명

메시지를 성공적으로 삭제하면 즉시 삭제로 표시되며 클라이언트에서 더 이상 액세스할 수 없습니다. 메시지는 나중에 가비지 수집 중 큐에서 제거됩니다.

클라이언트가 메시지 가져오기 작업을 사용하여 메시지를 검색한 후 클라이언트는 메시지를 처리하고 삭제해야 합니다. 메시지를 삭제하려면 Get Messages 작업의 응답 본문에 다음 두 가지 데이터 항목이 반환되어 있어야 합니다.

  • 메시지 ID - 큐에서 메시지를 식별하는 불투명 GUID 값입니다.

  • 유효한 PopReceipt - 메시지가 검색되었음을 나타내는 불투명 값입니다.

메시지 ID는 이전 Get Messages 작업으로부터 반환됩니다. PopReceipt는 최근의 Get Messages 또는 Update Message 작업으로부터 반환됩니다. Delete Message 작업이 성공하려면 요청에 지정된 팝 영수증이 또는 Update Message 작업에서 반환된 팝 영수증과 Get Messages 일치해야 합니다.

PopReceipt는 다음 이벤트 중 하나가 발생할 때까지 유효한 상태로 유지됩니다.

  • 메시지가 만료됩니다.

  • 메시지는 또는 Update Message에서 Get Messages 받은 마지막 팝 영수증을 사용하여 삭제됩니다.

  • 보이지 않는 시간 제한이 만료되고 메시지가 요청에 의해 큐에서 Get Messages 해제됩니다. 보이지 않는 시간 제한이 만료되면 메시지가 다시 표시됩니다. 다른 Get Messages 요청에 의해 검색된 경우 반환된 팝 영수증을 사용하여 메시지를 삭제하거나 업데이트할 수 있습니다.

  • 메시지가 새 표시 유형 시간 제한으로 업데이트됩니다. 메시지가 업데이트되면 새 팝 영수증이 반환됩니다.

일치하는 팝 영수증이 포함된 메시지를 찾을 수 없는 경우 서비스는 오류 코드 404(찾을 수 없음)를 반환합니다. 이 오류는 팝 수신이 더 이상 유효하지 않은 이전에 나열된 경우에 발생합니다.

추가 정보

Azure Storage에 대한 요청 권한 부여
상태 및 오류 코드
Queue Storage 오류 코드