tôi đang cố gắng tp được phantomjs webserver làm việc cho tôiKhông thể cung cấp tập tin hình ảnh thông qua phantomjs webserver
Tôi muốn phục vụ 2 file, file html, và một file ảnh png, file html được phục vụ tốt và trả lại một cách chính xác trong trình duyệt, nhưng các tập tin png không phải là
đây là mã cho server
var fs = require('fs');
function loadFile(name){
if(fs.exists(name)){
console.log(name+ " File exist");
return fs.open(name,"r");
}else {
console.log("File do not exist");
}
}
var server, service;
server = require('webserver').create();
service = server.listen(8080, function (request, response) {
if(request.url.split(".")[1] === "html"){
var fi = loadFile("./test.html");
response.statusCode = 200;
response.write(fi.read());
fi.close();
response.close();
}else if (request.url.split(".")[1] === "png"){
var fi = loadFile("./output_87.png");
response.headers = {"Content-Type":"image/png"};
response.statusCode = 200;
response.write(fi.read());
fi.close();
response.close();
}
});
và đây là đánh dấu tập tin html
<html>
<head><title>title</title></head>
<body><h1> Hello world </h1>
<img src="output_87.png" alt="image">
</body>
</html>
khi xem tệp này trong trình duyệt, tệp png không được hiển thị và thậm chí nếu tôi cố gắng trỏ trình duyệt tới tệp png, nó không hiển thị nó
tôi đã kiểm tra với công cụ phát triển chrome mạng trạng thái và xác nhận rằng tệp được tải xuống hoàn toàn bởi trình duyệt
điều gì là sai?
bằng cách này, tôi phải sử dụng phantomjs, xin vui lòng d không cho tôi biết để sử dụng máy chủ khác
nhờ
Joe
Tôi vừa mới gửi một PR trên phantomjs kho để khắc phục vấn đề này https://github.com/ariya/phantomjs/pull/288/files (mã có lẽ là crappy, nhưng nó hoạt động cho tôi) – NiKo