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 리포지토리에서 사용할 수 있습니다.