2016-10-03 1 views
0

Проблема Спецификация:Как передать строку JSON другому api с помощью RESTSharp?

ресурсов URI: address/index.php?r=api/employee

заголовка запроса: Content- Type: application/json

HTTP Метод: POST

Запрос кузова: { "employeeName" : "ABC","age":"20","ContactNumber": "12341234"}

выше р араметры должны быть переданы системе в виде строки HTTP POST в строке JSON.

Я пытаюсь решить эту проблему, используя RESTSharp. Но у меня есть некоторые проблемы. Как после выполнения запроса мой код возвращает Null-ответ, и я не уверен, что моя строка 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") вы должны определить шаблон URL-адрес правильно: var request = new RestRequest("api/employee/{username} ", Method.POST);

Также вы должны установить Content-Type

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

Befor добавить Body

+0

Спасибо сэр за ваш ответ. Я обнаружил, что в моем коде нет проблем. Его работа прекрасна. :) – Pongta

Смежные вопросы