2014-10-14 4 views
0

파일을 BLOB 형태로 Azure 저장소에 업로드하는 .NET 웹 응용 프로그램을 만들었습니다.메타 데이터를 저장할 때 400을 얻는 방법

그러나 제대로 작동하지만 특정 메타 데이터 태그를 추가 할 때 문제가 발생합니다.
"설명"메타 데이터 태그를 상당히 큰 값 (~ 425 자 길이로 테스트 됨)을 추가하면 400 개의 잘못된 요청 오류가 발생합니다.
Azure Management Portal에서 수동으로이 작업을 수행 할 때 아무런 문제가 없습니다.

코드 사용 : 감사합니다

blob.Metadata["Description"] = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam non nisi suscipit, dignissim nibh quis, imperdiet metus. Donec elementum nunc nec mi mollis, eget rhoncus lorem aliquam. Sed gravida, elit at elementum euismod, ligula arcu viverra mauris, consectetur commodo sem dui id tortor. Duis rutrum libero at ante tincidunt posuere. Aliquam turpis arcu, pellentesque ac purus vitae, eleifend consectetur lectus imperdiet ornare."; 
blob.SetMetadata(); 


,
루크

편집 : 그것은 지금 400 오류 대신 403 (대신 금지의 잘못된 요청)를 제공

편집 2 : 더 많은 테스트가 끝나면 문자열에 '\ n'문자를 넣습니다. 어떻게 든 내 문제를 일으키는 것입니다. (Azure Management Portal에서 여전히 허용됨)

+0

방금 ​​저장소 계정의 BLOB에 사용했던 값을 사용하여 시도했지만 정상적으로 작동했습니다. 속성 ('FetchAttributes')을 읽는 것과 같은 다른 작업을 수행 할 수 있는지 확인해 주시겠습니까? –

+0

내 질문을 업데이트했습니다. 어떻게 든 그것은 '\ n'을 덧붙인다. – Luke

+0

당신이'그것이 덧붙인다 '는 것은 무엇을 의미합니까? 너는 분명히 할 수 있니? –

답변

0

마지막 문제는 탈출 문자를 사용할 수 없다는 것입니다.
문자열을 인코딩하고 디코딩하여이 문제를 해결했습니다. 그리고

Convert.ToBase64String(Encoding.UTF8.GetBytes("Some value with a \n in it.")); 

는 다시

Encoding.UTF8.GetString(Convert.FromBase64String("U29tZSB2YWx1ZSB3aXRoIGEgCiBpbiBpdC4=")); 

이 문제가 해결 얻을 수 있습니다. 지원에 감사드립니다. (Gaurav Mantri)

관련 문제