2011-11-26 4 views
4

Azure Blob 저장소의 스트림을 WCF를 통해 브라우저로 직접 반환하려고합니다. 기본적으로 REST WCF 서비스가 있고 파일이 Azure Blob 저장소에 저장되어있는 동안 사용자가 서비스를 통해 파일을 다운로드하도록하고 있습니다. 이 질문에 Azure Blob 스트림을 WCF 서비스에서 직접 반환하는 중

Returning Azure BLOB from WCF service as a Stream - Do we need to close it?

그것은 WCF 때문에 WCF의 반환 스트림으로 블롭 스트림을 제공 할 수있는 방법이, 먼저 새 스트림에 전체 파일을 다운로드 제가 그러나 좋아합니까 스트림을위한 프록시처럼 더 많은 역할을합니까?

내 문제는 대용량 파일 (> 10MB)입니다. 사용자에게 반환하기 전에 Azure 저장소에서 전체 스트림을 다운로드하고 싶지 않습니다.

내가 이런 식으로하는 이유는 Azure Blob 저장소에 저장된 파일에 대한 액세스를 허용하기 전에 사용자에 대한 보안 검사를 수행하고 있으며 일부 파일은 최대 1GB 크기 일 수 있습니다 .

답변

5

WCF가 클라이언트를 인증하는 데 사용되는 비슷한 기능을 수행했습니다 (블롭이 여전히 존재하는지 확인하는 등). 모든 것이 정상이면 WCF 서비스는 Shared Access Signature가있는 URL을 반환했습니다. 클라이언트가 저장소에서 직접 스트림에 액세스 할 수있었습니다. blob을 wcf 역할로 가져 와서 거기에서 스트리밍하는 트랜잭션 비용을 절약합니다.

이 기능을 사용할 수 있습니까?

+0

네, 더 많은 검색을 한 후에 같은 결론을 내었습니다. 이것은 프록시를 만드는 것보다 훨씬 우아한 해결책입니다. 확인 감사합니다. –

관련 문제