2016-05-31 1 views
2

저는 Azure 저장 클라이언트를 사용하여 일부 파일을 Azure BLOB 저장소에 업로드하고 있습니다. 이 업로드는 로컬 컴퓨터에 저장된 dll 파일에서 발생합니다. 다음은 내가 사용하고있는 코드입니다.Azure 스토리지 클라이언트 라이브러리 프록시 서버와 함께 업로드

public bool UploadBlob(byte[] fileContent, CloudStorageAccount account, string containerName, string blobName) 
    { 
     try 
     { 
      CloudBlobClient blobclient = account.CreateCloudBlobClient(); 
      CloudBlobContainer container = blobclient.GetContainerReference(containerName); 
      container.CreateIfNotExist(); 
      CloudBlockBlob blob = container.GetBlockBlobReference(blobName); 

      HashSet<string> blocklist = new HashSet<string>(); 
      foreach (FileBlock block in GetFileBlocks(fileContent)) 
      { 

       if (ScanTool.mIsThreadStop) 
        return false; 
       ScanTool.mDocumentUploadedSize += block.Content.Length; 
       blob.PutBlock(
        block.Id, 
        new MemoryStream(block.Content, true), 
        null 
        ); 
       blocklist.Add(block.Id); 
      } 
      blob.PutBlockList(blocklist); 
      blob.FetchAttributes(); 
      return blob.Properties.Length == fileContent.Length; 
     } 
     catch (Exception e) { 
      Log.WriteErrorLog(e, "UploadBlob at AzureBlobUtilCS"); 
      throw new System.Net.WebException(); 
     } 
    } 

다음과 같이 내가 업로드 방법 위에 전화 드렸습니다과 코드 다음에 "프록시 인증 실패"예외가 발생

try 
     { 
      CloudBlobContainer container = AzureHelper.GetContainer(containerName, accountName, accountKey); 
      CloudStorageAccount storageAccount = CloudStorageAccount.Parse(AzureHelper.GetConnectionString(accountName, accountKey)); 
      return UploadBlob(fileContent, storageAccount, containerName, blobName); 
     }catch(Exception e) 
     { 
      WriteInformationMessage("exception at UploadBlob11 =" + e.Message); 
      return false; 
     } 

이 문제는 내 클라이언트 사이트 중 하나의 만남이며, 그는 그들이 말을한다 로컬 네트워크에 프록시가 있어야합니다. 프록시 이름은 bluecoat proxy SG 900

어떻게 제거합니까?

+0

app/web 구성 파일 https://msdn.microsoft. co.kr/ko-ko/library/kd3cf2ex (v = vs.110) .aspx. –

+0

위의 Gaurav의 지시를 따르십시오. :) –

+0

@Zhaoxing Lu 하늘빛 저장 클라이언트 라이브러리를 사용하여 프록시를 인증 할 수있는 방법이 있습니까 –

답변

1

Azure 저장소뿐 아니라 전체 웹 사이트에서도 비슷한 문제가 발생했습니다. 구성해야하는 경우

<configuration> 
    <system.net> 
    <defaultProxy enabled="false"></defaultProxy> 
    </system.net> 
</configuration> 

:

HttpClient 클래스에서 사용되는 기본 프록시 될 일이 푸른 저장, 사용하는 기본 프록시를 사용하지 않도록하기 위해, 나는 defaultProxy 요소를 추가하여, Web.config 변경 기본 프록시는 사용하지 않도록 설정하는 대신 해당 요소 내에서 문서에 따라 수행 할 수 있습니다. https://msdn.microsoft.com/en-us/library/kd3cf2ex(v=vs.110).aspx

관련 문제