Запрос API PUT: пустое значение, чтобы оставить то же самое, и пустое пространство для удаления - PullRequest
1 голос
/ 26 апреля 2020

В веб-приложении мы обновляем информацию о клиентах в API. Данные отправляются в объектах.

Иногда это просто город, иногда электронная почта, иногда комбинация обоих. См. Различные примеры ниже,

Разработчик серверной части C# сказал, что при отправке запроса PUT API с большим количеством участников,

Если хотите изменить один элемент,

1) Установите 1 элемент, который отличается, с фактическим значением

2) Установите 19 членов класса как NULL, чтобы сохранить то же самое

3) Если хотите удалить, отправьте whitespace пусто вместо NULL

Одна мысль состоит в том, что мы могли бы создать API-интерфейс PATCH, однако разработчику необходимо создать еще один новый API-интерфейс PATCH, когда бизнес-логика c уже сложна (в дополнение к Работа PUT API создана).

https://docs.microsoft.com/en-us/aspnet/core/web-api/jsonpatch?view=aspnetcore-3.1

Нам любопытно, если NULL как Same, а WhiteSpace как пусто - это правильная методология API, или мы не должны реализовывать это стратегия?

Данные

public class CustomerMember
{
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public string StreetName{ get; set; }
    public string City { get; set; }
    public string ZipCode { get; set; }
    public string PhoneNumber { get; set; }
    public string EmailAddress{ get; set; }
    ....
}

Возможные запросы:

{
 "FirstName": "Joe",
 "City": "Atlanta"
}

{
 "Email": "joe@hotmail.com",
}

{
 "PhoneNumber": "",
 "ZipCode": "30318"
 "Email": "joe@hotmail.com"
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...