다음을 통해 공유


PNS(플랫폼 알림 서비스) 피드백 가져오기

Azure Storage 컨테이너 URL을 검색합니다. 컨테이너에는 알림 허브에 대한 피드백 데이터가 있습니다. 그런 다음 호출자는 Azure Storage Services REST API를 사용하여 컨테이너의 콘텐츠를 검색할 수 있습니다.

요청

메서드 요청 URI HTTP 버전
GET https://{namespace}.servicebus.windows.net/{Notification Hub}/feedbackcontainer?api-version=2015-01 HTTP/1.1

요청 헤더

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

요청 헤더 Description
콘텐츠 형식 application/xml;type=entry;charset=utf-8
권한 부여 Service Bus를 사용한 공유 액세스 서명 인증에 지정된 대로 생성된 SAS 토큰입니다.
x-ms-version 2015-01

요청 본문

없음

응답

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

응답 코드

코드 Description
200 컨테이너 URL을 가져왔습니다.
401 인증 실패 액세스 키가 잘못되었습니다.
403 SKU에 기능이 활성화되지 않아 요청이 거부되었습니다. 표준으로 업그레이드합니다.

상태 코드에 대한 자세한 내용은 상태 및 오류 코드를 참조하세요.

응답 헤더

없음

응답 본문

성공하면 인증 토큰을 사용하여 Azure Storage 컨테이너 URL이 반환됩니다.

예를 들면 다음과 같습니다.

https://pushpnsfb5702abf7f71e31.blob.core.windows.net/00000000000297200840?sv=2014-02-14&sr=c&sig=XXxxxxxxxxxxxxx%xxxx%2xxxxxxxxxxxxxxxxxxxxxxxxxx%3D&se=2015-05-01T00%3A00%3A22Z&sp=rl

반환된 URL을 사용하여 컨테이너를 탐색하고 Azure Storage Services REST API를 사용하여 콘텐츠를 가져올 수 있습니다.

다음은 두 개의 다른 알림 메시지 ID와 연결된 WNS 만료 채널을 나타내는 예제 PNS 피드백을 보여 줍니다.

<EnumerationResults ServiceEndpoint="---Removed---" ContainerName="00000000002001061088">
  <Blobs>
    <Blob>
      <Name>07272016</Name>
      <Properties>
        <Last-Modified>Wed, 27 Jul 2016 20:57:07 GMT</Last-Modified>
        <Etag>---Removed---</Etag>
        <Content-Length>7150</Content-Length>
        <Content-Type>application/octet-stream</Content-Type>
        <Content-Encoding />
        <Content-Language />
        <Content-MD5 />
        <Cache-Control />
        <Content-Disposition />
        <BlobType>BlockBlob</BlobType>
        <LeaseStatus>unlocked</LeaseStatus>
        <LeaseState>available</LeaseState>
      </Properties>
    </Blob>
  </Blobs>
  <NextMarker />
</EnumerationResults>

Get Blob named : 07272016

<?xml version="1.0" encoding="utf-16"?>
<PnsFeedback xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/netservices/2010/10/servicebus/connect">
  <FeedbackTime>2016-07-27T20:47:10.8905532Z</FeedbackTime>
  <NotificationSystemError>ExpiredChannel</NotificationSystemError>
  <Platform>windows</Platform>
  <PnsHandle>---Removed---</PnsHandle>
  <NotificationId>215e3aba529b49da9b6d35c134147952-20160727204710-2001061088-1</NotificationId>
</PnsFeedback>

<?xml version="1.0" encoding="utf-16"?>
<PnsFeedback xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/netservices/2010/10/servicebus/connect">
  <FeedbackTime>2016-07-27T20:56:34.1588971Z</FeedbackTime>
  <NotificationSystemError>ExpiredChannel</NotificationSystemError>
  <Platform>windows</Platform>
  <PnsHandle>---Removed---</PnsHandle>
  <NotificationId>82d1e0626bd14221be7298341ae9a7b3-20160727205634-2001061088-1</NotificationId>
</PnsFeedback>

예제 코드

이 REST API를 보여 주는 예제 코드는 azure-notificationhubs-samples GitHub 리포지토리에서 사용할 수 있습니다.