如何使用NodeJS服务图像

如何使用NodeJS服务图像

我有一个标志是居住在公众/图像/logo.gif。这是我的NodeJS代码。

http.createServer(function(req, res){
  res.writeHead(200, {'Content-Type': 'text/plain' });
  res.end('Hello World \n');}).listen(8080, '127.0.0.1');

它可以工作,但是当我请求localhost:8080/logo.gif时,我显然没有得到徽标。

我需要做些什么来服务于一个形象。


幕布斯7119047
浏览 480回答 3
3回答

MMMHUHU

我同意其他海报的说法,最终,你应该使用一个框架,比如Express.。但首先,你也应该明白如何在没有图书馆的情况下做一些基本的事情,真正理解图书馆为你摘录了什么。步骤如下解析传入的HTTP请求,查看用户请求的路径在条件语句中添加用于服务器响应的路径如果请求图像,请从磁盘读取图像文件。在标题中提供图像内容类型。服务于身体中的形象内容代码看起来像这样(没有测试)fs = require('fs');http = require('http');url = require('url');http.createServer(function(req, res){   var request = url.parse(req.url, true);   var action = request.pathname;   if (action == '/logo.gif') {      var img = fs.readFileSync('./logo.gif');      res.writeHead(200, {'Content-Type': 'image/gif' });      res.end(img, 'binary');   } else {       res.writeHead(200, {'Content-Type': 'text/plain' });      res.end('Hello World \n');   }}).listen(8080, '127.0.0.1');

波斯汪

您应该使用特快框架。npm install expressvar express = require('express');var app = express();app.use(express.static(__dirname + '/public'));app.listen(8080);然后url localhost:8080/映像/logo.gif应该可以工作。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Node.js