Как выполнить метод API PUT с аргументом [[FromForm]] в powershell - PullRequest
0 голосов
/ 17 сентября 2018

Мой API имеет метод PUT, который обновляет объект резервирования.

[HttpPut]
public Reservation Put([FromForm] Reservation res) => 
repository.UpdateReservation(res);

Я просто хочу узнать, как я могу выполнить этот метод в powershell с помощью консоли диспетчера пакетов в Visual Studio?

Обратите внимание, что этот метод имеет метод привязки модели [FromForm].Поэтому я должен отправить данные резервирования в виде данных.

Я знаю, что если этот метод имеет атрибут [FromBody] вместо [FromForm], тогда я могу выполнить следующую команду на powershell.

Invoke-RestMethod http://localhost:8888/api/Reservation -Method PUT 
-Body (@{Id="5"; Name="Mary"; StartLocation="Tokyo"; EndLocation="Abu Dhabi"} | 
ConvertTo-Json) -ContentType "application/json"

Но я хочу знать, какой будет команда для атрибута [FromForm], пожалуйста, помогите?

1 Ответ

0 голосов
/ 17 сентября 2018

Атрибут FromForm предназначен для входящих данных из отправленной формы, отправленной с типом содержимого application/x-www-url-formencoded.Поэтому установите для contentType значение application/x-www-url-formencoded.

. Попробуйте это так

$url = "http://localhost:8888/api/Reservation";
$body = @{Id="5"; Name="Mary"; StartLocation="Tokyo"; EndLocation="Abu Dhabi"};
Invoke-RestMethod -Uri $ClipsURL -Body $body -Method Put -ContentType "application/x-www-form-urlencoded"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...