SDKを使用してキューにC#ライブラリ呼び出しを行うことができます。しかし、私はキューへのREST呼び出しを行うことができません。AzureキューへのREST呼び出しの作成方法
どうすればよいですか?任意のコードサンプルが評価されます。
SDKを使用してキューにC#ライブラリ呼び出しを行うことができます。しかし、私はキューへのREST呼び出しを行うことができません。AzureキューへのREST呼び出しの作成方法
どうすればよいですか?任意のコードサンプルが評価されます。
私はSDKを使用してキューにC#のライブラリの呼び出しを行うことができています。しかし、私はキューにレストコールを行うことができません。どのように進めて、どのようなコードサンプルも評価されます。
まず、this linkは、Azure Storageが提供するメッセージキューを処理するためのREST操作を示しています。詳細な情報を得るには、リンクを確認してください。
次は、create a queue under the given accountへのサンプルリクエストです。このようなリクエストを作成することができます。
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(string.Format(CultureInfo.InvariantCulture,
"https://{0}.queue.core.windows.net/{1}",
StorageAccount, queuename));
req.Method = "PUT";
req.Headers.Add("Authorization", AuthorizationHeader);
req.Headers.Add("x-ms-date", mxdate);
req.Headers.Add("x-ms-version", storageServiceVersion);
req.ContentLength = 0;
とAuthorizationHeaderを生成するための署名文字列を構築するために、次のコードとAuthentication for the Azure Storage Servicesを参照してください。
string canonicalizedHeaders = string.Format(
"x-ms-date:{0}\nx-ms-version:{1}",
mxdate,
storageServiceVersion);
string canonicalizedResource = string.Format("/{0}/{1}", StorageAccount, queuename);
string stringToSign = string.Format(
"{0}\n\n\n\n\n\n\n\n\n\n\n\n{1}\n{2}",
requestMethod,
canonicalizedHeaders,
canonicalizedResource);
リクエストは次のようになります。
公式ドキュメントの例があります。
Request:
POST https://myaccount.queue.core.windows.net/messages?visibilitytimeout=30&timeout=30 HTTP/1.1
Headers:
x-ms-version: 2011-08-18
x-ms-date: Tue, 30 Aug 2011 01:03:21 GMT
Authorization: SharedKey myaccount:sr8rIheJmCd6npMSx7DfAY3L//V3uWvSXOzUBCV9wnk=
Content-Length: 100
Body:
<QueueMessage>
<MessageText>PHNhbXBsZT5zYW1wbGUgbWVzc2FnZTwvc2FtcGxlPg==</MessageText>
</QueueMessage>
https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/put-message
あなたがこれまでに試した持っているあなたに実行している問題は何であるかを教えてください。適切な検索を行うと、.Net SDKを使用する代わりにREST APIが使用されているC#で多くのコードサンプルが見つかります。 –
@ GauravMantri私はいくつかの検索をしようとしましたが、私の要件に合ったものを見つけることができません。私は非常にazure.Anyサンプルコードのリンクに歓迎されます – pankaj
少し古いが、 //azurestoragesamples.codeplex.com。これはあなたに進める方法についてのアイデアを与えるはずです。 –