메시지 엿보기

작업은 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 값입니다. 이 값은 큐 서비스에서 메시지에 할당되고 클라이언트에 불투명합니다.

InsertionTimeExpirationTime 요소는 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>  

권한 부여

이 작업은 계정 소유자 및 이 작업을 수행할 수 있는 권한이 있는 공유 액세스 서명이 있는 모든 사용자가 수행할 수 있습니다.

설명

peekonlytrue로 설정된 큐에서 메시지를 검색하면 메시지 표시 상태가 변경되지 않습니다. 클라이언트가 메시지 가져오기 작업을 사용하여 메시지를 검색할 때까지 큐의 다른 소비자가 메시지를 계속 사용할 수 있습니다. 메시지를 요청하는 클라이언트는 응답과 함께 팝 영수증을 받지 않으므로 메시지를 삭제할 수 없습니다.

표시되는 메시지만 작업을 사용하여 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>  
  

추가 정보

Azure Storage에 대한 요청 권한 부여
상태 및 오류 코드
큐 서비스 오류 코드