Node.js 在expressjs中显示简单图像 我有一个名为image.jpg的图像存储在location中 express文件夹中的/public/images/images.jpg
我的express程序如下::Node.js 在expressjs中显示简单图像 我有一个名为image.jpg的图像存储在location中 express文件夹中的/public/images/images.jpg,node.js,express,Node.js,Express,我的express程序如下:: var express = require('express') , http = require('http') , mysql = require('mysql'); // <---- HERE var app = express(); var connection = mysql.createConnection({ host: 'localhost', user: 'root', password: "root",
var express = require('express')
, http = require('http')
, mysql = require('mysql'); // <---- HERE
var app = express();
var connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: "root",
database: 'test123'
});
connection.connect(); // <---- AND HERE
// all environments
app.set('port', process.env.PORT || 7005);
app.get('/',function(request,response){
connection.query('SELECT * FROM MyTable', function(err, rows, fields)
{
console.log('Connection result error '+err);
console.log('no of records is '+rows.length);
response.writeHead(200, { 'Content-Type': 'application/json'});
response.end(JSON.stringify(rows));
});
} );
http.createServer(app).listen(app.get('port'), function(){
console.log('Express server listening on port ' + app.get('port'));
});
我的代码哪里出了问题Express不处理服务资产或静态文件。然而,
static()
中间件就是为此而编写的。只需添加以下代码行:
app.use(express.static('/public/images'));
此中间件将启动安装到
/
的静态文件服务器,并提供/public/images
目录中的文件。访问http://url.ext/image.jpg
将提供来自/public/images/image.jpg
的图像文件。您可以使用express.static内置中间件功能:
app.use(express.static('images'));
或
要使用要提供服务的目录的绝对路径,您的解决方案和指导将起作用。。。谢谢你这么好的回答!
app.use(express.static('images'));
app.use('/static', express.static(__dirname + '/images'));