BuckyのThe New Bostonのチュートリアルに続いて、単純な静的インデックスページを実行しているHTMLファイルに画像が表示されるようです。 jsnode.js内容がHTMLの単純なHTTPサーバーで画像が表示されない
ご注意:これは学校プロジェクトです。私は未だに到達していない急行や接続などのミドルウェアを使用せずにこれを行うことが任されています。 :D
var http = require('http');
var fs = require('fs');
var accessTime = new Date();
var accessCount = 0;
function send404Response(response) {
response.writeHead(404, {"Content-Type": "text/plain"});
response.write("Error 404: Page not found!");
response.end();
}
function onRequest(request, response) {
if (request.method == 'GET' && request.url == '/'){
response.writeHead(200, {"Content-Type": "text/html"});
fs.createReadStream("./index.html").pipe(response);
fs.writeFileSync("logfile.txt", "\n Someone has accessed the index page \n" + accessTime + "\n ", "UTF-8",{'flags': 'a'});
console.log("A user made a request");
accessCount += 1;
console.log(accessCount + " page requests so far . . .");
}else {
send404Response(response);
}
}
http.createServer(onRequest).listen(8888);
console.log("Server is running...");
私はそれを実行すると、ローカルホストとして罰金htmlページがロード:私は外部の画像を使用しない限り、8888しかし、誰の画像が表示されます。例えば、htmlは標準のイメージタグを持つだけでしょうか?
<img src='photo.jpg' .... /> // doesnt work
<img src='http://www.AWebSite.com/photo.jpg' .... /> // naturally works
ありがとう!!
あなたの 'onRequest'関数をもう一度見て、リクエストがどのように見えるかを例えば以下のように調べます。 'console.log(リクエスト)'をしています。いくつかのリクエストがあり、 'if文 'を満たすのは1人だけです... –