2016-12-30 35 views
0

我使用RestSharp在VS 2015上發送Xamarin.Android appl的POST請求,但沒有得到響應。我增加了超時但沒有迴應。它與POSTMAN一起工作,但不適用於Android應用程序。REST POST在Xamarin.Android App中沒有響應。它正在迴應郵差,但不是應用程序。

RestClient client = new RestClient("https://" + orgId + ".internetofthings.ibmcloud.com"); 
RestRequest request = new RestRequest("/api/v0002/application/types/" + typeId + "/devices/" + deviceId + "/events/" + typeId + deviceId, Method.POST); 

     byte[] byteArray = Encoding.UTF8.GetBytes(username + ":" + password); 
     string authenticationToken = Convert.ToBase64String(byteArray); 

     request.AddHeader("Authorization", "Basic " + authenticationToken); 
     request.Timeout = 2000000; 
     request.AddJsonBody(newVal); 


     IRestResponse response = client.Execute(request); 
     return response.StatusCode.ToString();` 

我只發送「newVal」(字符串)在正文中。這適用於郵差。請讓我知道是否需要更多解釋。非常感謝。

環境: 的Visual Studio 2015年,RESTSharp,Xamarin.Android,服務器:IBM BlueMix

+0

檢查:http://stackoverflow.com/questions/34795818/getting-a-httpstatuscode-of-0 – Ironman

+0

什麼錯誤信息,如果有的話,你收到? – ValerieLampkin

回答

0

這解決了,問題是用「內容類型」。我添加的內容類型:

request.AddHeader("Content-Type","application/json"); 

但內容類型沒有設置出於某種原因,這就是爲什麼我的要求正在從服務器關閉並返回狀態碼0 所以不是,我做了以下和它的工作精細。

request.JsonSerializer.ContentType = "application/json; charset=utf-8"; 
相關問題