为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用NodeJS服务图像

如何使用NodeJS服务图像

幕布斯7119047 2019-07-04 14:57:37
如何使用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时,我显然没有得到徽标。我需要做些什么来服务于一个形象。
查看完整描述

3 回答

?
MMMHUHU

TA贡献1834条经验 获得超8个赞

我同意其他海报的说法,最终,你应该使用一个框架,比如Express.。但首先,你也应该明白如何在没有图书馆的情况下做一些基本的事情,真正理解图书馆为你摘录了什么。步骤如下

  1. 解析传入的HTTP请求,查看用户请求的路径
  2. 在条件语句中添加用于服务器响应的路径
  3. 如果请求图像,请从磁盘读取图像文件。
  4. 在标题中提供图像内容类型。
  5. 服务于身体中的形象内容

代码看起来像这样(没有测试)

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');


查看完整回答
反对 回复 2019-07-04
?
波斯汪

TA贡献1811条经验 获得超4个赞

您应该使用特快框架。

npm install express

var express = require('express');var app = express();app.use(express.static(__dirname + '/public'));app.listen(8080);

然后url localhost:8080/映像/logo.gif应该可以工作。


查看完整回答
反对 回复 2019-07-04
  • 3 回答
  • 0 关注
  • 474 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信