2016-08-24 62 views
0

Azure API調用返回一個SAS令牌,可用於查詢存儲表(示例中的值更改如下)。如何在REST調用中使用Azure存儲SASToken

隨着Azure存儲SDK for Java中,我能夠這樣整個令牌傳遞到憑據對象的構造函數,像這樣:

new StorageCredentialsSharedAccessSignature(tokenString) 

這憑據對象,然後以某種方式用於「CloudTableClient認證「對象:

CloudTableClient tableClient = new CloudTableClient(
    new URI(tableEndpoint), 
    new StorageCredentialsSharedAccessSignature(tokenString)) 

不過,我希望有人能幫助我使用令牌來構建一個更簡單的REST調用。我無法對CloudTableClient進行反向工程,找出如何處理tokenString。我試過把它放在URL和授權標題中,但大部分都是試驗和錯誤。任何幫助,將不勝感激。

例令牌格式:

"sasToken" : "?sv=2015-04-05&tn=WADMetricsPT1HP10DV2S20160704&spk=%3A002Fsubscriptions%3A123456789012%3A12345678%3A12345678%3A123456789%3A002FresourceGroups%3A002FRGName001%3A002Fproviders%3A002FMicrosoft%3A002ECompute%3A002FvirtualMachines%3A002FAzureWinServer&epk=%3A002Fsubscriptions%3A123456789012%3A002D54c4%3A12345678%3A12345678%3A123456789%3A002FresourceGroups%3A002FRGName001%3A002Fproviders%3A002FMicrosoft%3A002ECompute%3A002FvirtualMachines%3A002FAzureWinServer&sig=SOMEFAKESIGNATURE123456a%2SOMEFAKESIGNATURE12345%3D&se=2016-08-18T10%3A57%3A58Z&sp=r" 

回答

0

答案是簡單地把它放在網址的結尾,並附加你有後,任何額外的查詢參數。例如,URL中需要api版本參數,因此您現在需要添加:

& api-version = 2015-04-05。

此外,請勿使用請求的授權標頭。

+0

一個評論:不需要添加'api-version'到你的URL。它應該沒有這個工作。 –

相關問題