2016-05-17 51 views
0

我確認我有權執行請求。在AmazonCloudSearchClient上調用DescribeIndexFieldsAsync時出錯

根據亞馬遜的Cloud Search Dev Troubleshooting Guide我遇到的錯誤可能是由於.net sdk使用錯誤的api版本。我沒有看到明確指定api版本的方法。我想避免不得不手動創建http請求。

我想通過SDK發出請求。

我已經嘗試過所有可用的SDK版本,並且他們都給我這個錯誤。

我也試過在各種組合中指定請求屬性。什麼都沒有

有人可以指示我如何解決這個問題嗎?

預期的行爲:返回信息的所有索引字段

實際行爲:

錯誤 - 「結果消息:
Amazon.Runtime.AmazonUnmarshallingException:從AWS響應體錯誤解組應答回:{。 「消息」: 「通過申請行政法規規定禁止」, 「__type」: 「CloudSearchException」 }」

----> System.Xml.XmlException :根級別的數據無效。 1號線,位置1

代碼示例:

var _configClient = new AmazonCloudSearchClient(
        WebConfigurationManager.AppSettings["CloudSearchAccessKey"], 
        WebConfigurationManager.AppSettings["CloudSearchSecretKey"], 
        new AmazonCloudSearchConfig 
        { 
         RegionEndpoint = RegionEndpoint.USWest2, 
         ServiceURL = WebConfigurationManager.AppSettings["CloudSearchUrl"] 
        }); 

await _configClient.DescribeIndexFieldsAsync(new DescribeIndexFieldsRequest()) 

回答

0

CloudSearch將返回JSON,你可以在你的身體的反應看,和SDK試圖解組是爲XML。當您直接進行查詢時,可以添加&format=xml以獲得xml結果。 SDK中應該有類似的選項。

+0

感謝您的建議。我沒有看到.Net SDK的這種選項。在構造函數params或方法params中。 –

相關問題