Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTTP+;意思是:在请求资源之前发送资源_Javascript_Angularjs_Http_Request_Response - Fatal编程技术网

Javascript HTTP+;意思是:在请求资源之前发送资源

Javascript HTTP+;意思是:在请求资源之前发送资源,javascript,angularjs,http,request,response,Javascript,Angularjs,Http,Request,Response,我有一个MEAN stack应用程序,据我所知,当加载页面时,会发生以下情况: Express应用程序收到一个请求 请求被路由并发送一个Express视图(在本例中为index.html) 请求index.html中列出的依赖项-默认样式表、angularJS等 静态文件服务器使用请求的项目进行响应 AngularJS在DOM中自行设置,绑定所有锚,动态创建依赖项列表,例如,将导致准备大量HTTP请求 对AngularJS实现的依赖项发出请求,这包括AngularJS视图(partial.htm

我有一个MEAN stack应用程序,据我所知,当加载页面时,会发生以下情况:

  • Express应用程序收到一个请求
  • 请求被路由并发送一个Express视图(在本例中为index.html)
  • 请求index.html中列出的依赖项-默认样式表、angularJS等
  • 静态文件服务器使用请求的项目进行响应
  • AngularJS在DOM中自行设置,绑定所有锚,动态创建依赖项列表,例如,
    将导致准备大量HTTP请求
  • 对AngularJS实现的依赖项发出请求,这包括AngularJS视图(partial.html)
  • 静态文件服务器使用请求的项目进行响应
  • partial.html请求所有包含项和依赖项(include1.hmtl)
  • 静态文件服务器使用请求的项目进行响应
  • include1.html请求所有依赖项(image.jpg)
  • 静态文件服务器用image.jpg响应
  • 客户端现在已收到所有必需的组件,并在浏览器中正确呈现
  • 对我来说,这似乎太乏味了,请求必须来回传递,而且超出了必要的范围。我如何才能让我的应用缓存每个页面的依赖项列表,并响应初始请求,如“哟,我知道你只是要求/并期待一个文件,但我正在四处寻找”,知道你会在收到这些文件后立即与我争用更多的内容。现在让我为你发送这些垃圾。”

    除非存在更好的方法,否则不发送到客户端的依赖项应通过HTTP请求加载,而那些依赖项应位于浏览器缓存中,并准备在本地加载


    为阅读干杯。

    您可以使用html清单预缓存或从缓存中排除您需要/想要的任何资源。@DADAV不完全是我要找的。虽然这种方法很有用,但第一次加载仍然会涉及大量的back和forthing操作,资源将在客户端缓存,并且我无法为每个页面创建单独的列表(如root/#/home和root/#/article/12)。如果需要每页列表,可以动态构建清单并向其传递路径标记。这将提供一个连接到系统其他部分的机会,因此可能不需要太多额外的代码来实现。它还提供了一个免费的额外JSAPI来显式地管理客户端的资源。