메시지 엿보기
작업은 Peek Messages
큐 앞부분에서 하나 이상의 메시지를 검색하지만 메시지의 표시 유형을 변경하지는 않습니다.
요청
다음과 같이 요청을 생성할 Peek Messages
수 있습니다. HTTPS를 사용하는 것이 좋습니다.
myaccount를 스토리지 계정 이름으로 바꾸고 myqueue를 큐 이름으로 바꿉니다.
메서드 | 요청 URI | HTTP 버전 |
---|---|---|
GET |
https://myaccount.queue.core.windows.net/myqueue/messages?peekonly=true |
HTTP/1.1 |
에뮬레이트된 스토리지 서비스 요청
에뮬레이트된 스토리지 서비스에 대한 요청을 수행할 때 에뮬레이터 호스트 이름 및 큐 서비스 포트를 로 127.0.0.1:10001
지정한 다음 에뮬레이트된 스토리지 계정 이름을 지정합니다.
메서드 | 요청 URI | HTTP 버전 |
---|---|---|
GET |
http://127.0.0.1:10001/devstoreaccount1/myqueue/messages?peekonly=true |
HTTP/1.1 |
자세한 내용은 로컬 Azure Storage 개발에 Azurite 에뮬레이터 사용을 참조하세요.
URI 매개 변수
요청 URI에 다음과 같은 매개 변수를 지정할 수 있습니다.
매개 변수 | 설명 |
---|---|
numofmessages |
선택 사항입니다. 최대 32까지 큐에서 미리 보려는 메시지 수를 지정하는 0이 아닌 정수 값입니다. 기본적으로 이 작업으로는 메시지에서 단일 메시지를 미리 봅니다. |
timeout |
선택 사항입니다.
timeout 매개 변수는 초 단위로 표시됩니다. 자세한 내용은 큐 서비스 작업에 대한 시간 제한 설정을 참조하세요. |
요청 헤더
필수 및 선택적 요청 헤더는 다음 표에 설명되어 있습니다.
요청 헤더 | 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 상태 코드, 응답 헤더 집합 및 XML 응답 본문이 포함되어 있습니다.
상태 코드
작업에 성공하면 상태 코드 200(정상)이 반환됩니다.
상태 코드에 대한 자세한 내용은 상태 및 오류 코드를 참조하세요.
응답 헤더
이 작업의 응답에는 다음과 같은 헤더가 포함됩니다. 응답 헤더에는 또한 추가 표준 HTTP 헤더가 포함됩니다. 모든 표준 헤더는 HTTP/1.1 프로토콜 사양을 준수합니다.
응답 헤더 | Description |
---|---|
x-ms-request-id |
만들어진 요청을 고유하게 식별하고 이를 사용하여 요청 문제를 해결할 수 있습니다. 자세한 내용은 API 작업 문제 해결을 참조하세요. |
x-ms-version |
요청을 실행하는 데 사용된 큐 서비스 버전입니다. 버전 2009-09-19 이상에 대해 만들어진 요청에 대해 반환됩니다. |
Date |
서비스에서 생성된 UTC 날짜/시간 값으로, 응답이 시작된 시간을 나타냅니다. |
x-ms-client-request-id |
요청 및 해당 응답의 문제를 해결하는 데 사용할 수 있습니다. 이 헤더의 값 x-ms-client-request-id 은 요청에 있고 값에 표시되는 ASCII 문자가 1,024자 이하인 경우 헤더 값과 같습니다. 헤더가 x-ms-client-request-id 요청에 없으면 응답에 표시되지 않습니다. |
응답 본문
Peek Messages
작업의 응답 XML은 다음 형식으로 반환됩니다.
MessageID
요소는 큐에서 메시지를 식별하는 GUID 값입니다. 이 값은 큐 서비스에서 메시지에 할당되고 클라이언트에 불투명합니다.
InsertionTime
및 ExpirationTime
요소는 UTC 값으로 표현되고 RFC 1123 설명에 따라 형식이 지정됩니다.
DequeueCount
요소는 처음에 메시지를 큐에서 제거할 때 값 1을 갖습니다. 이 값은 이후에 메시지를 큐에서 제거할 때마다 증가합니다.
참고
큐 DequeueCount
서비스 버전 2009-09-19를 사용하여 큐를 만든 경우에만 요소가 응답 본문에 반환됩니다.
<QueueMessagesList>
<QueueMessage>
<MessageId>string-message-id</MessageId>
<InsertionTime>insertion-time</InsertionTime>
<ExpirationTime>expiration-time</ExpirationTime>
<DequeueCount>integer</DequeueCount>
<MessageText>message-body</MessageText>
</QueueMessage>
</QueueMessagesList>
참고
이 응답은 또는 TimeNextVisible
요소를 포함하지 않는다는 점에서 메시지 가져오기 작업에 대한 응답과 PopReceipt
다릅니다.
샘플 응답
Response Status:
HTTP/1.1 200 OK
Response Headers:
Transfer-Encoding: chunked
Content-Type: application/xml
Date: Fri, 16 Sep 2011 22:51:18 GMT
Server: Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0
Response Body:
<?xml version="1.0" encoding="utf-8"?>
<QueueMessagesList>
<QueueMessage>
<MessageId>06eba214-8107-4412-a7f6-710a9baff647</MessageId>
<InsertionTime>Fri, 09 Oct 2009 18:59:54 GMT</InsertionTime>
<ExpirationTime>Fri, 16 Sep 2009 18:59:54 GMT</ExpirationTime>
<DequeueCount>1</DequeueCount>
<MessageText>PHRlc3Q+dGhpcyBpcyBhIHRlc3QgbWVzc2FnZTwvdGVzdD4=</MessageText>
</QueueMessage>
</QueueMessagesList>
권한 부여
이 작업은 계정 소유자 및 이 작업을 수행할 수 있는 권한이 있는 공유 액세스 서명이 있는 모든 사용자가 수행할 수 있습니다.
설명
peekonly
가 true
로 설정된 큐에서 메시지를 검색하면 메시지 표시 상태가 변경되지 않습니다. 클라이언트가 메시지 가져오기 작업을 사용하여 메시지를 검색할 때까지 큐의 다른 소비자가 메시지를 계속 사용할 수 있습니다. 메시지를 요청하는 클라이언트는 응답과 함께 팝 영수증을 받지 않으므로 메시지를 삭제할 수 없습니다.
표시되는 메시지만 작업을 사용하여 Peek Messages
검색할 수 있습니다. 검색할 수 있는 최대 메시지 수는 32개입니다.
Get Messages
호출을 사용해서 메시지를 처음 검색하면 해당 DequeueCount
속성이 1로 설정됩니다. 삭제되지 않고 이후에 다시 검색되면 속성이 DequeueCount
증가합니다. 클라이언트는 이 값을 사용하여 메시지가 검색된 횟수를 확인할 수 있습니다.
참고
에 대한 Peek Messages
호출은 의 값을 DequeueCount
증가하지 않지만 클라이언트가 읽을 수 있도록 이 값을 반환합니다.
numofmessages 매개 변수가 범위를 벗어나면 서비스는 다음 예제와 같이 추가 오류 정보와 함께 상태 코드 400(잘못된 요청)을 반환합니다.
HTTP/1.1 400 One of the query parameters specified in the request URI is outside the permissible range.
Connection: Keep-Alive
Content-Length: 455
Via: 1.1 TK5-PRXY-22
Date: Wed, 02 May 2012 19:37:23 GMT
Content-Type: application/xml
Server: Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: 6a03526c-ca2c-4358-a63a-b5d096988533
x-ms-version: 2011-08-18
<?xml version="1.0" encoding="utf-8"?>
<Error>
<Code>OutOfRangeQueryParameterValue</Code>
<Message>One of the query parameters specified in the request URI is outside the permissible range.
RequestId:6a03526c-ca2c-4358-a63a-b5d096988533
Time:2012-05-02T19:37:24.2438463Z
</Message>
<QueryParameterName>numofmessages</QueryParameterName>
<QueryParameterValue>0</QueryParameterValue>
<MinimumAllowed>1</MinimumAllowed>
<MaximumAllowed>32</MaximumAllowed>
</Error>