java - 从 POST 方法调用 PUT 是个好主意吗
问题描述
在我的情况下,我必须自动化 PUT/POST 操作的某些操作,我有那些已经就位的端点,它们将发挥它们的作用。
我的计划是使用另一种方法来驱动整个自动化,将此方法视为新的 POST 端点,它将从我已经提到的同一服务中调用每个 POST 和 PUT 端点。
我将根据输入调用那些现有的 PUT 和 POST,如果考虑到输入是新的,我将调用现有的 POST,如果数据库中存在给定的输入,我将调用 PUT。
直到我很好,但是我有一个问题,这让我很烦恼,因为我的 POST 新端点正在调用 PUT 和 POST,我每种方法类型都必须只执行其类型的操作,但在这里我正在调用 PUT 和 POST,而我的父调用方法类型是 POST。
我不确定我是否朝着正确的方向努力来实现我的用例。
请以不同的方式纠正我。
注意 - 我有 Spring Boot 应用程序,它总是需要一些端点来触发我正在谈论的任何逻辑。
更新我的问题以便更好地理解。
解决方案
我真的不知道你到底是什么意思。HTTP 方法被认为是执行特定任务,但再次使用 POST 更新某些内容是可以的——可能不是最佳实践,但可以。如果您想分离关注点(添加、更新),那么只需实现两个不同的端点,一个处理创建,另一个处理更新。客户端(无论是网络应用程序还是桌面应用程序或其他)必须处理此问题。
推荐阅读
- python - Python zipfile:带有换行符的文件名
- javascript - ajax函数成功刷新表
- python - 使用 AWS CDK (python) 创建 Glue 作业失败
- php - 使用 PDO 驱动程序 PHP 在 sql-server 查询中循环
- python - 如何找到 .find_element_by_class_name 的第二次出现?
- vue.js - 如何使用 v-for 循环遍历嵌套对象
- angular - 在检测到 2 个更改后调用函数
- javascript - 根据循环中的变量设置表的可见性
- sqlite - 在 SQLite FLutter 数据库中创建 DATETIME 列?
- javascript - 获取 Lumen 控制器结果作为 Vue.js 组件