Я нахожусь в формах Xamarin и делаю остальные вызовы API, я новичок в этом. Я хочу отправить параметры поиска:
{ "busObIds": [
"8102508"], "searchText": "John"}
(это необработанный формат JSON) до конечной точки API:
var client = new RestClient("http://localhost/NameAPI/api/V1/getquicksearchresults");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Bearer " + bearer);
У меня также есть Носитель авторизации, который мне нужно подать. Я спотыкаюсь об этом и не уверен, как это сделать правильно, поскольку мне было показано, как это сделать в Postman, но в настоящее время я не могу преобразовать это в свой проект в Visual Studio Xamarin Forms. Помогите пожалуйста, если можете.
- Так я правильно делаю?
- Нужно ли сериализовать мой JSON в классе модели?
- Я пишу или получаю? как говорится POST, но я не уверен, что я делаю правильно.
- Публиковать ли мои параметры в AddHeader?
В любом случае, спасибо заранее.
Обновление:
var _client = new RestClient("http://localhost/NameAPI/api/V1/getquicksearchresults");
var request = new RestRequest(Method.POST);
request.AddHeader("Accept", "application/json");
request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
request.AddHeader("Authorization", "Bearer " + bearer);
request.AddParameter("busObIds", "8102508");
request.AddParameter("searchText", "John");
IRestResponse response = _client.Execute(request);
var jsonData = response.Content;
var jsonObj = JsonConvert.DeserializeObject<CiResponse>(jsonData);
this.CiList = new ObservableCollection<CiItem>();
if (null != jsonObj && jsonObj.Types != null && jsonObj.Types.Count > 0)
{
foreach (var item in jsonObj.Types)
this.CIList.Add(new CiItem
{
PublicId = item.PublicId,
SubTitle = item.SubTitle,
Text = item.Text,
Title = item.Title
});
}
Во время работы у меня нет никаких признаков того, что это неправильно, но на экране не отображается вывод.