我有一个相当具体的问题。调用REST API来在票据系统中创建问题的PHP脚本应该只能调用一次
我正在为我们公司的员工注册程序编写一个应用程序。在多种形式的过程中,收集有关新员工需求的数据并将其输入到MySQL数据库中。
最后一步,一个PHP脚本获取这些信息,并通过cURL在我们的JIRA票证系统(通过REST API)中创建多个票证。
执行cURL调用的网页也在之后呈现结果,即链接到创建的票证。如果有人点击一个链接,然后决定按下浏览器的“后退”按钮,整个脚本将再次运行。
如何有效防止这种情况?我已经有了一些想法,但其中没有一个看起来很合适:
- 在数据库中创建更多信息,即每个故障单的状态,然后在决定运行cURL调用之前查询该信息。
- 不要让按下后退按钮,通过JS来达到脚本(实际上这个想法是完全垃圾,但我仍然会把它留在这里)
- 不允许用户调用脚本,而是让表单发送一封电子邮件给我,信息已输入,以便我可以自己运行脚本。每次...
我请你原谅这不是一个“确切”的问题,而是更多的最佳做法。虽然在我的愚见中,这是论坛所需要的,而不是你可以在任何文档中阅读的东西。
问候
你可以使用一个头的用户从不会卷曲请求,做票 – RamRaider
的显示或者,正如你不能真正阻止页面(接收响应后)脚本重定向离开用户使用浏览器历史来回移动,您可以在提交完成后设置会话值,并且如果该会话值存在,则不会处理curl请求,而是显示与该会话值相关的任何记录 – RamRaider