2016-10-03 51 views
0

問題規格:如何使用RESTSharp將JSON字符串傳遞給另一個API?

資源URI:address/index.php?r=api/employee

請求報頭:Content- Type: application/json

HTTP方法:POST

請求體:{ "employeeName" : "ABC","age":"20","ContactNumber": "12341234"}

對於上述p參數應該作爲JSON字符串中的一行HTTP POST傳遞給系統。

我想用RESTSharp來解決這個問題。但我有一些問題像執行請求後,我的代碼返回一個空響應,我不知道我的JSON字符串傳遞是否正確。

這裏是我的代碼:

public ActionResult EmployeeInfo(Employee employee) 
    { 
     //string empName = unSubscription.employeeName.ToString(); 

     var client = new RestClient("http://localhost:21779/"); 

     var request = new RestRequest("api/employee ", Method.POST); 
     request.RequestFormat = DataFormat.Json; 
     request.AddBody(new Employee 
     { 
      employeeName = "ABC", 
      age = "20", 
      ContactNumber = "12341234" 
     }); 


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


     // execute the request 
     IRestResponse response = client.Execute(request); 
     var content = response.Content; // raw content as string 

     return View(); 
    } 

這有什麼錯我的代碼?

而且我有點困惑

request.AddUrlSegment("username", "Admin") and request.AddParameter("name", "value"). 

基本上我想知道如何利用AdduUrlSegment()AddParameter()

在此先感謝。

回答

0

對於使用request.AddUrlSegment("username", "Admin")必須先定義網址模板:var request = new RestRequest("api/employee/{username} ", Method.POST);

你也應該設置Content-Type

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

befor添加身體

+0

謝謝你,你的迴應。我發現我的代碼沒有問題。它的工作正常。 :) – Pongta

相關問題