作为一个前端很少去思考后端响应的问题,这个图就让我陷入了疑问,SPA 初始加载的时候服务端是返回一个 html 页面和所需的脚本、样式表,然后导航到其他页面时客户端发送 ajax 请求服务端返回 json 格式的数据来更新页面,那么服务端是如何判断什么时候返回 html 页面什么时候返回 json 格式的数据的?
vue-router 里讲实现单页路由需要后端配置,如 nginx 设置
location / {
try_files $uri $uri/ /index.html;
}
意思是当 URL 匹配不到任何静态资源时都返回同一个 index.html。那么是否是不管 SPA 初始加载和导航到其他页面时都要返回的这一个 html 页面?可是这又和上面的说法相悖了,所以 SPA 初始加载和导航到其他页面时服务端是如何响应的???