#c# #json #.net #api #http
Вопрос:
Я пишу два api, Api 1 и Api 2. У меня есть объект типа «динамический» в моем api 1. Я пытаюсь отправить этот объект в api 2. Вот мой код
public IActionResult processPensionInput([FromBody]dynamic inputFromPensionerBody)
{
using(var askPensionDisbursement = new HttpClient())
{
var jsonstring = JsonConvert.SerializeObject(inputFromPensionerBody);
askPensionDisbursement.BaseAddress = new Uri("http://localhost:51549/api/PensionDisbursements/");
var responseTalk = askPensionDisbursement.GetAsync("calculate?inputFromPensioner=" jsonstring);
responseTalk.Wait();
return Ok(responseTalk.Result);
int code = (int)responseTalk.Result.StatusCode;
if(code==10)
{
var readTask = responseTalk.Result.Content.ReadAsStringAsync();
return Ok("Okay");
}
return Ok("Not okay");
}
}
Код другого api-это
public IActionResult calculatefromdetails(dynamic inputFromPensioner/*,dynamic serviceCharge*/)
{
StatusCodeResult flag = new StatusCodeResult(21);
using (var response = new HttpClient())
{
//some loooong code here...
}
return new StatusCodeResult(10);
}
Но проблема возникает в самом первом api, где в postman не найден вывод 415 типов носителей.
Как отправить объект из одного api в другой.
Комментарии:
1. IMHO, чем меньше привилегий у пользователя, тем чаще он выбирает динамические данные.
2. Вы не можете передать строку json в HttpClient. GetAsync. Вы должны передать uri, возможно, с параметрами запроса
?x=1amp;y=2
.
Ответ №1:
Вы не можете реализовать строку json .GetAsync
в api 1.