2013-03-13 22 views
7

Trong ứng dụng của tôi im bằng cách sử dụng khuôn khổ thể hiện để phục vụ các tập tin phía khách hàng.Nhưng trong khi đưa ra hình nền cho các phần tử html.Its hiển thị không tải được url nhất định.Làm cách nào để phân phát tệp hình ảnh bằng cách sử dụng khung công khai trong node.js?

var express = require('express') 
    , http = require('http'); 

var app = express(); 
app.configure(function(){ 
    app.use(express.static(__dirname + '/public')); 
}); 
var server = http.createServer(app); 
var io = require('socket.io').listen(server); 
server.listen(8000); 

Trong thư mục công cộng tôi đã tạo javascripts, stylesheets, thư mục hình ảnh. Tôi không biết cách truy cập tệp hình ảnh.

.logo { 
    background:url('localhost:8080\logo.jpg');//This image url not loading 
    float:left; 
    width:20px 
    height:20px; 
} 

Trả lời

19

Nếu thư mục tập tin của bạn được như

/public 
    /stylesheets 
    /javascripts 
    /images 
     /logo.jpg 

sau đó truy cập công cộng của bạn bắt đầu từ thư mục /public. Điều này có nghĩa là để truy cập hình ảnh, địa chỉ sẽ là localhost:8080/images/logo.jpg.

Tóm lại, bạn có hai vấn đề.

  1. Sử dụng một dấu gạch chéo (/), không phải là một dấu chéo ngược (\) trong URL của bạn
  2. bạn bỏ lỡ bao gồm image thư mục trong địa chỉ
+0

cảm ơn vì bài đăng của bạn. Hiện tại, tôi đang làm việc tốt. – sachin

+0

Không sao cả; vui mừng khi nghe. –

+0

Điều gì xảy ra nếu hình ảnh nằm trong một thư mục riêng tư? – Lion789

3

Bạn cũng đang lắng nghe trên cổng 8000, nhưng hình ảnh bạn đang tham chiếu có cổng 8080.

Các vấn đề liên quan