Подтвердить что ты не робот

Как составить запрос для веб-метода REST в скрипаче

Я могу позвонить в web serivce, но свойство name не является обязательным.

Запрос Fiddler

POST http://localhost:50399/api/custservice/ HTTP/1.1
User-Agent: Fiddler
Host: localhost: 50399
Content-Length: 28
{ "request": { "name":"test"}}

POST Webmethod

public string Any(CustomerRequest request)
{
  //return details
}

CustomerRequest.cs

public class CustomerRequest 
{
  public string name {get;set;}
}
4b9b3361

Ответ 1

Прежде всего вам нужно добавить Content-Type 'application/json' в запрос:

POST http://localhost:50399/api/custservice/ HTTP/1.1
User-Agent: Fiddler
Host: localhost: 50399
Content-Type: application/json

Затем измените данные POST на:

{"name":"test"}

Вы сможете получить доступ к данным, используя:

public string Any(CustomerRequest request)
{
  return request.name
}

Альтернативно, используя существующую структуру данных POST, создайте новый класс:

public class RequestWrapper
{
  public CustomerRequest request { get; set; }
}

и измените свой метод действий на:

public string Any(RequestWrapper wrapper)
{
  return wrapper.request.name;
}