Post 不创建资源的操作
Post operation that doesn't create an resource
我想创建一个 POST 端点,它根据请求正文计算值。我不想在此操作中创建任何资源,只是 return 计算结果。是否可以使用 Api 平台实现此目的?
是的,这是可能的。
您可以:
- 创建一个控制器,并从中 return
JsonResponse
以便在创建任何东西之前停止生命周期,如 here、 所述
- disable the
WriteListener
您的自定义操作:write = false
(见下文),
- create a dummy
DataPersister
,使用空 persist
方法,如果由于某些原因您需要完成生命周期,
/**
* @ApiResource(
* collectionOperations = {
* "custom" = {
* "method" = "post",
* "write" = false",
* "path" = "/my/custom/path",
* }
* }
* }
*/
可能还有其他几种方式...
我想创建一个 POST 端点,它根据请求正文计算值。我不想在此操作中创建任何资源,只是 return 计算结果。是否可以使用 Api 平台实现此目的?
是的,这是可能的。
您可以:
- 创建一个控制器,并从中 return
JsonResponse
以便在创建任何东西之前停止生命周期,如 here、 所述
- disable the
WriteListener
您的自定义操作:write = false
(见下文), - create a dummy
DataPersister
,使用空persist
方法,如果由于某些原因您需要完成生命周期,
/**
* @ApiResource(
* collectionOperations = {
* "custom" = {
* "method" = "post",
* "write" = false",
* "path" = "/my/custom/path",
* }
* }
* }
*/
可能还有其他几种方式...