前提・実現したいこと
プログラム初心者です。
あるゲームのタイトル画面の作成中で、htmlに設定した画像を表示しながら、画像を押した際に他のページへ遷移できるように頑張っていたのですが、ネットで調べたプログラムを参考につくっていたところ、ページ遷移はできるのですが、画像の表示が上手くいかずにalt属性に付与した言葉が表示されるだけで画像が一切表示されません。
どなたかご教授をお願いできませんでしょうか?
発生している問題・エラーメッセージ
エラーが表示されているわけではないので読み込めてはいて、なにかしらの指定が足りないだけなのだとは思いますがそれがわかりません。また、cssも適用できていません。
該当のソースコード
const http = require('http'); const fs = require('fs'); const url = require('url'); const gestpage = fs.readFileSync('./index/index_gest.html', 'UTF-8'); const userpage = fs.readFileSync('./index/index_user.html', 'UTF-8'); const loginpage = fs.readFileSync('./index/login/login.html', 'UTF-8'); const stylecss = fs.readFileSync('./index/css/style_gest.css', 'UTF-8'); const port = 3000; const server = http.createServer(RouteSetting); server.listen(port, () => { console.log(`Server listening on ${port}`); }); function getType(_url) { var types = { '.html': 'text/html', '.css': 'text/css', '.js': 'text/javascript', '.png': 'image/png', ".jpg": "image/jpeg" } for (var key in types) { if (_url.parse(key)) { return types[key]; } } return 'text/plain'; } function RouteSetting(req, res) { const url_parts = url.parse(req.url); switch (url_parts.pathname) { case '/': case '/index_gest.html': res.writeHead(200, {'Content-Type': getType(url)}); res.write(gestpage); res.end(); break; case '/index_user.html': res.writeHead(200, {'Content-Type': getType(url)}); res.write(userpage); res.end(); break; case '/login/login.html': res.writeHead(200, {'Content-Type': getType(url)}); res.write(loginpage); res.end(data); break; case '/css/style.css': res.writeHead(200, {'Content-Type': 'text/css'}); res.write(stylecss); res.end(); break; default: res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('お探しのページは見つかりません。'); break; } }
試したこと
if文での処理に変えようとしたりしました。また下にのせているサイトに載っているプログラムの一部一部を組み合わせてみたりしましたが、うまく動きませんでした。
補足情報(FW/ツールのバージョンなど)
参考にさせていただいたサイトです。
https://www.kipure.com/article/225/
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/12/27 13:40