如何在 Laravel-8 和 InertiaJs 中向服务器发出 POST 请求时在浏览器中保留当前的 ​​GET url

Posted

技术标签:

【中文标题】如何在 Laravel-8 和 InertiaJs 中向服务器发出 POST 请求时在浏览器中保留当前的 ​​GET url【英文标题】:How to preserve current GET url in the browser while making POST request to server in Laravel-8 and InertiaJs 【发布时间】:2021-03-31 10:36:36 【问题描述】:

我在 Laravel 8 中使用 Inertia JS,向服务器发出以下 POST 请求。问题是浏览器 URL 也使用 POST 请求更新,这在某些情况下可能是预期的行为,但我希望将实际的 GET 请求保留在浏览器中,尽管使用多个 Laravel 路由向服务器发送不同类型的请求。

this.$inertia.put(`/task/$task_id`, order, category_id);

this.$inertia.visit(`/task/$task_id`, 
    method: 'put',
    data: order, category_id,
    only: ['categories', 'msg'],
    replace: true,
    preserveState: true,
    preserveScroll: true,
);
                

有没有人知道,我如何在使用 Inertia JS 向服务器发送 POST 请求的同时保留浏览器中现有的 GET URL?

【问题讨论】:

【参考方案1】:

您可以尝试删除 replace: true

【讨论】:

以上是关于如何在 Laravel-8 和 InertiaJs 中向服务器发出 POST 请求时在浏览器中保留当前的 ​​GET url的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Laravel 8、Inertia.js 和 Vue3 定义全局变量?

laravel 8 +惯性js中的会话超时

如何在 Laravel InertiaJS 中使用 VueJS 配置 Tailwind + Postcss

多参数 InertiaJS 路由

InertiaJS 在验证错误后保留表单数据

使用 Vue 3 在 InertiaJS 中定义全局组件