Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.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 PhantomJS正在更新资源文件路径_Javascript_Node.js_Phantomjs - Fatal编程技术网

Javascript PhantomJS正在更新资源文件路径

Javascript PhantomJS正在更新资源文件路径,javascript,node.js,phantomjs,Javascript,Node.js,Phantomjs,我有一个nodejs+phantomjs设置。我正在尝试生成html并将其提供给搜索引擎优化机器人。该应用程序目前运行正常,但我希望提高性能。由于加载了很多js文件,所以我尝试在phantomjs中更新资源路径,以便将资源指向本地,而不是在浏览器中发出http请求以提高性能 我正在做这样的事情 page.onResourceRequested = function (requestData, request) { if(requestData.url.indexOf('.js') >

我有一个nodejs+phantomjs设置。我正在尝试生成html并将其提供给搜索引擎优化机器人。该应用程序目前运行正常,但我希望提高性能。由于加载了很多js文件,所以我尝试在phantomjs中更新资源路径,以便将资源指向本地,而不是在浏览器中发出http请求以提高性能

我正在做这样的事情

page.onResourceRequested = function (requestData, request) {

  if(requestData.url.indexOf('.js') > 0) {
    requestData.url = requestData.url.replace("http://foo.com/","/path to local directory of the resources");

  }
但这似乎不起作用。在“网络”选项卡中,我仍然可以看到从外部源提取的资源

有没有其他办法?我还研究了phantomjs中似乎没有帮助的缓存

非常感谢你的帮助。
谢谢。

在查看文档后,刚刚找到了解决方案

onResourceRequested

请求一个资源。回调的第一个参数是 requestData元数据对象。第二个参数是networkRequest 对象本身

例如:

  • 中止():中止当前网络请求。中止当前进程 网络请求将调用(onResourceError)回调

  • 更改url(url):更改网络请求的当前url

changeUrl(url)可用于更改url

page.onResourceRequested = function(requestData, networkRequest) {
   console.log('Request (#' + requestData.id + '): ' + JSON.stringify(requestData)); 
};