Classic ASP を使用して Azure Blob Storage にファイルをアップロードしようとしています (選択の余地はありません!)。ただし、MSXML2.ServerXMLHTTP を使用してコンテナーの内容を一覧表示することはできますが、ブロブの作成に失敗しています。PDFファイルをアップロードするために使用する必要があるため、BlockBlobを使用しています。
認証キーを正しく作成できていないと思います。Classic ASP VBScript で認証キーを作成するコード サンプルはありますか? 以下のようなものがありますが、クラシック ASP でキーを生成する方法がわかりません。
' replace with your account's settings
' setup the URL
baseUrl = "https://<myaccount>.blob.core.windows.net"
Set http = Server.CreateObject("MSXML2.ServerXMLHTTP")
PathUrl = baseUrl & "/test/myblob"
' setup the request and authorization
http.open "PUT", PathUrl , false
'How do I generate this key from the headers and path using HMAC-SHA256 and my prim/sec account key
http.setRequestHeader "Authorization", "SharedKey <myaccount>:?????"
http.setRequestHeader "Date", "2011-6-16 9:22"
http.setRequestHeader "x-ms-date", "2011-06-16 9:22"
http.setRequestHeader "x-ms-version", "2009-09-19"
http.setRequestHeader "Content-Length", "11"
http.setRequestHeader "x-ms-blob-type","BlockBlob"
http.setRequestHeader "Content-Type", "text/plain; charset=UTF-8"
postData = "hello world"
' send the POST data
http.send postData
' optionally write out the response if you need to check if it worked
Response.Write http.responseText
AuthenticationFailedServer failed to authenticate the request というエラーが表示されます。Authorization ヘッダーの値が、署名を含めて正しく形成されていることを確認してください。
ありがとう
グレアム