如何用惯性发送多个 HTTP 请求

How to send multiple HTTP requests with inertia

Inertia 提供了一个非常酷的辅助方法,它基于 axios,我建议,例如:

Inertia.post('/users', {
  name: 'John Doe',
  email: 'john.doe@example.com',
})

我没有在 Inertia 文档中找到它,所以我在这里问 - 是否有可能像使用 axios 一样使用 Inertia 执行多个 HTTP 请求?

// execute simultaneous requests 
axios.all([
  axios.get('https://api.github.com/users/mapbox'),
  axios.get('https://api.github.com/users/phantomjs')
])
.then(responseArr => {
  //this will be executed only when all requests are complete
  console.log('Date created: ', responseArr[0].data.created_at);
  console.log('Date created: ', responseArr[1].data.created_at);
});

或者我应该只使用 axios 来做到这一点?

据我所知;不,您不能像使用 axios 那样使用 Inertia 执行多个 HTTP 请求。所以,我会使用 axios 来做到这一点。

我对文档的解释如下:Inertia works by intercepting clicks on the frontend, and making the visit by XHR. As such it is designed to do this one click at a time. The visit method 还表明它通过使用一个 url.

调用 axios 来进行这次访问

此外,由于您请求的是普通 JSON,Inertia 的作者建议在处理普通 JSON 时直接使用 XHR,因为“惯性请求必须接收惯性响应”(source).