要求中に、新しい BLOB を作成する適切な Authorization ヘッダーを使用して、ファイルをコンテナーPUT
に入れようとすると、プロセスで "404 Resource Not Found" エラーが発生します。PUT
https://accountNameHere.blob.core.windows.net/containerNameHere
コンテナー名とアカウント名はどちらも正しいです。
なぜ失敗するのですか?
生のリクエストヘッダーは次のとおりです。
PUT /testss HTTP/1.1
Host: accountName.blob.core.windows.net
Accept: */*
Connection: Keep-Alive
0: content-encoding
1: content-language
2: content-length
3: content-md5
4: content-type
5: date
6: if-modified-since
7: if-match
8: if-none-match
9: if-unmodified-since
10: range
x-ms-blob-type: BlockBlob
x-ms-version: 2011-08-18
x-ms-date: Fri, 09 Aug 2013 04:17:59 GMT
Content-Length: 126377
Authorization: SharedKey accountName:MBVLmoxzxZr+tf8EZw2GkbFLEHuNn8FNAaEHrcty/cM=
Expect: 100-continue
私が送信した署名用の文字列は次のとおりです。
PUT x-ms-blob-type:BlockBlob x-ms-date:Fri, 09 Aug 2013 04:03:20 GMT x-ms-version:2011-08-18 /accountName/test
そして、これが彼らが期待したものです:
PUT 126377 x-ms-blob-type:BlockBlob x-ms-date:Fri, 09 Aug 2013 04:02:17 GMT x-ms-version:2011-08-18 /accountName/test
両者の唯一の違いは126377
afterPUT
です。それはファイルのコンテンツの長さです。それを削除する方法がわかりません。