У меня есть REST API uploadFeed, который загружает пользовательский канал на основе feedType (строковое значение берется как часть тела запроса). Различный тип канала обеспечивает совершенно другую модель pojo в теле запроса.
Например, если feedType имеет значение «TYPE1», тело запроса API должно выглядеть следующим образом:
{
"feedType":"TYPE1",
"inputModel": {
"a": "somevalue"
"b" : "somevalue",
"c" : "somevalue",
}
}
если feedType, скажем, «TYPE2», то тело запроса API должно выглядеть следующим образом:
{
"feedType":"TYPE2",
"inputModel": {
"x": "somevalue"
"y" : "somevalue",
"z" : "somevalue",
}
}
Теперь я хочу избежать предоставления различных конечных точек API REST для двух типов feedType. Я имею в виду скорее предоставление сериализованного объекта inputModel в качестве входных данных, а затем десериализацию в бэкэнде на основе feedType. Для .eg
{
"feedType":"TYPE2",
"inputModel": "<<serialized object>>"
}
Это хороший дизайн REST API или есть лучшая альтернатива.