Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.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 使用路由器管理图像资源的get请求_Javascript_Node.js_Image - Fatal编程技术网

Javascript 使用路由器管理图像资源的get请求

Javascript 使用路由器管理图像资源的get请求,javascript,node.js,image,Javascript,Node.js,Image,我正在使用和发送获取图像的请求,方法是使用$('body')将图像附加到正文中。append(“”)。当我发送请求时,控制台正在记录GET/images/image.gif?34567 200 1.223 ms,但它不会运行路由器内部的功能来路由到该图像 router.get('/images/*', function(req, res) { console.log('Accessed image folder...') var requestURL = url.parse(r

我正在使用和发送获取图像的请求,方法是使用
$('body')将图像附加到正文中。append(“”)
。当我发送请求时,控制台正在记录
GET/images/image.gif?34567 200 1.223 ms
,但它不会运行路由器内部的功能来路由到该图像

router.get('/images/*', function(req, res) {
    console.log('Accessed image folder...')
    var requestURL =  url.parse(req.url,true);

    //ATTEMPT to capture request
    if(requestURL.pathname == '/images/image.gif') {
        console.log("Fetching image...")
    }

});
我还尝试使用特定的路由:
router.get('/images/image.gif',function(req,res){
,并尝试了以下操作


当请求映像目录中的特定映像时,如何使
获取
路由器工作?

如果您试图从节点服务器查看映像,则必须使用express static。以下代码可能会对您有所帮助

var express=require('express'),
app=express();
app.use(“/pictures”,lib.express.static(“/assets/images”);

只需获取图像名称作为参数,设置内容类型(您也可以根据请求的文件扩展名动态执行此操作,为简单起见,我仅将其设置为gif),然后对图像名称执行异步文件加载并返回。

谢谢您的输入,但我已经运行了代码,并制作了一个类似的、更简单的版本。奇怪的是,路由器只有在我使用错误的路径名时才能工作,即为
image
返回任何内容,否则我只能得到相同的
get/images/image.gif?34567200 1.223毫秒
登录控制台。
router.get('/images/:imageName', function(req, res) {
  var image = req.params['imageName'];
  res.header('Content-Type', "image/gif");
  fs.readFile(image, 'utf8', function(err, data){
    if(err){
      res.end(404);
    }
    res.send(data)    
  });
});