2017-05-14 276 views
0

我試圖查詢我的mlab mongodb數據庫上的數據與他們的休息API,但我無法得到它工作。RestSharp http statut代碼和響應statut 0「錯誤:SecureChannelFailure(驗證或解密失敗)」

爲了在我的Xamarin應用程序中創建Http休息請求我使用了restSharp,我嘗試了很多次,但我總是得到一個空的答案,而不是事件標題,所以我真的不知道問題來自哪裏。

這裏是我的代碼:

class HttpDataHandler 
{ 
    static String stream = null; 
    public String GetHttpData(String collection) 
    { 
     var uri = "https://api.mlab.com"; 

     var client = new RestClient(uri); 

     var request = new RestRequest("api/1/databases/{db}/collections/{coll}" , Method.GET); 
     request.AddParameter("apiKey", Common.API_KEY); // adds to POST or URL querystring based on Method 
     request.AddUrlSegment("db", Common.DB_NAME); 
     request.AddUrlSegment("coll", collection); 

     IRestResponse response = client.Execute(request); 

     if (response.StatusCode == System.Net.HttpStatusCode.OK) 
      System.Console.WriteLine(response.Content); // raw content as string 
     else 
      System.Console.WriteLine(response.StatusDescription + " " + response.ResponseUri+" "+ response.StatusCode); 

     return stream; 
    } 
} 
+0

您正在使用哪個平臺? 「響應」變量是否爲「StatusCode」集? –

+0

我正在使用visual studio 2017,沒有'response'變量不爲null,'StatusCode'設置爲0; –

+0

我的意思是iOS,Android,UWP作爲平臺。是否設置了'response'的ErrorMessage屬性? –

回答

0

MLAB使用TLS1.2。將您的Android項目的SSL/TLS實施從Default更改爲Native TLS 1.2+很可能會解決此問題。

請參閱the HttpClient Stack and SSL/TLS documentation瞭解Xamarin Android項目中提供的這兩個組合框的詳細說明。

+0

非常感謝你提姆這是問題 –

相關問題