Javascript 赫罗库说:";内部服务器错误";。代码中有什么错误
赫罗库正在表演Javascript 赫罗库说:";内部服务器错误";。代码中有什么错误,javascript,html,node.js,express,ejs,Javascript,Html,Node.js,Express,Ejs,赫罗库正在表演 "Internal server error" 当我点击“./保存”路线时 我尝试在localhost上运行代码来检查错误,结果如下 这是我的密码- index.js var express = require("express"); var bodyParser = require("body-parser"); var app = express(); app.use(bodyParser.urlencoded({extended:true})); app.use(bod
"Internal server error"
当我点击“./保存”路线时
我尝试在localhost上运行代码来检查错误,结果如下
这是我的密码-
index.js
var express = require("express");
var bodyParser = require("body-parser");
var app = express();
app.use(bodyParser.urlencoded({extended:true}));
app.use(bodyParser.json());
app.use('/public',express.static('public'));
app.set("view engine","ejs");
var port=process.env.PORT || 3000;
items = {}
obj1 = {
name : "Gaurav Kumar Sharma",
sentFrom : "Server",
msg : "Index Page",
time : new Date().toLocaleTimeString()
}
obj2 = {
name : "Gaurav Sharma",
sentFrom : "Server",
msg : "Error 404",
time : new Date().toLocaleTimeString()
}
var orgName = ""
var address = ""
//Items will be added here
app.get("/save",function(req,res){
res.render("canvas",{orgName : orgName,address:address,items:items})
})
app.post("/savetodatabase",function(req,res){
//console.log(req.body);
obj1.msg = req.body.imgURL;
res.redirect("/");
})
app.get("*",function(req,res){
res.send("PAGE RENDERED!!, Go Back and save it.");
})
app.listen(port,function(){
console.log("Server Started at port " + port);
})
<html>
<head></head>
<body>
<script
src="https://code.jquery.com/jquery-3.4.1.min.js"
integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
crossorigin="anonymous"></script>
<canvas id="myCanvas" width="640" height="840" style="border:1px solid black;"></canvas>
<form id="getForm" action="/savetodatabase" method="POST">
<input type="text" name="imgURL" id="imgURL">
<button id="submit">Confirm</button>
</form>
<script>
var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
....
....
start = 170
i=1
'<%items.forEach(function(item){%>'
ctx.fillText(i+".",40,start)
ctx.fillText('<%=item.name%>',110,start)
ctx.fillText('<%=item.rate%>',370,start)
ctx.fillText('<%=item.quantity%>',440,start)
ctx.fillText('<%=item.amount%>',530,start)
i = i + 1
start = start + 30
'<%})%>'
.....
.....
var img = canvas.toDataURL();
$("#imgURL").val(img);
</script>
</body>
</html>
Canvas.ejs
var express = require("express");
var bodyParser = require("body-parser");
var app = express();
app.use(bodyParser.urlencoded({extended:true}));
app.use(bodyParser.json());
app.use('/public',express.static('public'));
app.set("view engine","ejs");
var port=process.env.PORT || 3000;
items = {}
obj1 = {
name : "Gaurav Kumar Sharma",
sentFrom : "Server",
msg : "Index Page",
time : new Date().toLocaleTimeString()
}
obj2 = {
name : "Gaurav Sharma",
sentFrom : "Server",
msg : "Error 404",
time : new Date().toLocaleTimeString()
}
var orgName = ""
var address = ""
//Items will be added here
app.get("/save",function(req,res){
res.render("canvas",{orgName : orgName,address:address,items:items})
})
app.post("/savetodatabase",function(req,res){
//console.log(req.body);
obj1.msg = req.body.imgURL;
res.redirect("/");
})
app.get("*",function(req,res){
res.send("PAGE RENDERED!!, Go Back and save it.");
})
app.listen(port,function(){
console.log("Server Started at port " + port);
})
<html>
<head></head>
<body>
<script
src="https://code.jquery.com/jquery-3.4.1.min.js"
integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
crossorigin="anonymous"></script>
<canvas id="myCanvas" width="640" height="840" style="border:1px solid black;"></canvas>
<form id="getForm" action="/savetodatabase" method="POST">
<input type="text" name="imgURL" id="imgURL">
<button id="submit">Confirm</button>
</form>
<script>
var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
....
....
start = 170
i=1
'<%items.forEach(function(item){%>'
ctx.fillText(i+".",40,start)
ctx.fillText('<%=item.name%>',110,start)
ctx.fillText('<%=item.rate%>',370,start)
ctx.fillText('<%=item.quantity%>',440,start)
ctx.fillText('<%=item.amount%>',530,start)
i = i + 1
start = start + 30
'<%})%>'
.....
.....
var img = canvas.toDataURL();
$("#imgURL").val(img);
</script>
</body>
</html>
请帮助我修复错误。
项
是一个对象,而不是数组。对象没有forEach
函数。学会只发布相关代码,你的问题就会更容易回答。没有人想读50行代码,数一数这些行,就知道错误所在的行是什么。谢谢@ChrisG,我弄错了。