Javascript 在关闭选项卡之前进行API调用以存储仪表板小部件数据

Javascript 在关闭选项卡之前进行API调用以存储仪表板小部件数据,javascript,angularjs,api,conceptual,Javascript,Angularjs,Api,Conceptual,仪表板页面中有可以排序的小部件(可拖动和可拖放)。当用户重新访问我们的页面时,我们希望保持小部件的顺序,因此我们有API将所有小部件转储到DB。但问题是,我们是应该在窗口关闭/卸载之前,还是应该对小部件的每个拖放进行API调用? 通过阅读,了解到不建议在窗口卸载时执行API。那么有没有其他方法来解决这个问题呢?我不想对小部件的每个拖放都进行API调用 提前感谢您的帮助。如果您希望避免每次执行拖放操作时都执行请求,则可以在进行更改时显示一个按钮(保存更改)。因此,用户必须保存更改 如果希望避免每次

仪表板页面中有可以排序的小部件(可拖动和可拖放)。当用户重新访问我们的页面时,我们希望保持小部件的顺序,因此我们有API将所有小部件转储到DB。但问题是,我们是应该在窗口关闭/卸载之前,还是应该对小部件的每个拖放进行API调用? 通过阅读,了解到不建议在窗口卸载时执行API。那么有没有其他方法来解决这个问题呢?我不想对小部件的每个拖放都进行API调用


提前感谢您的帮助。

如果您希望避免每次执行拖放操作时都执行请求,则可以在进行更改时显示一个按钮(保存更改)。因此,用户必须保存更改

如果希望避免每次进行拖放操作时都执行请求,则可以在进行更改时显示一个按钮(保存更改)。因此,用户必须保存更改

我们想出了一个办法。使用navigator.sendBeacon() ()


多亏了Jaromanda X.

我们想出了一个办法。使用navigator.sendBeacon() ()


多亏了Jaromanda X.

现代浏览器的sendBeacon方法可能有用,但通常的“不适用于internet explorer或safari”规则applymodern浏览器的sendBeacon方法可能有用,但通常的“不适用于internet explorer或safari”规则Apply我们可以不在BeforeUnload事件上进行同步API调用吗?正如您提到的,可能不建议进行窗口卸载。我们可以不在BeforeUnload事件上进行同步API调用吗?正如您提到的,可能不建议进行窗口卸载。