【发布时间】:2020-10-14 16:06:07
【问题描述】:
我将发布部分有效和无效的内容。 第一部分是工作部分
app.get('/createblogpost', function(request, response){
if(request.cookies.sessionid == request.session.id){
response.render("createblogpost.hbs", {layout:'mainlogedin.hbs', token:request.csrfToken()})
}else{
response.render("createblogpost.hbs", {token:request.csrfToken()})
}
})
<form method="POST" action="/addblog">
<div class="form-group">
<label for="headline">Headline</label>
<input class="form-control" type="text" id="headline" name="headline" required>
</div>
<div class="form-group">
<label for="textarea">Content</label>
<textarea class="form-control" id="textarea" name="textarea" rows="10" required></textarea>
</div>
<input type="hidden" name="_csrf" value="{{token}}">
<button type="submit" class="btn btn-primary mb-2">Create</button>
</form>
这部分不起作用,看起来差不多。
app.get('/uploadimage', function(request, response){
if(request.cookies.sessionid == request.session.id){
response.render("uploadimage.hbs", {layout:'mainlogedin.hbs', token:request.csrfToken()})
}else{
response.render("uploadimage.hbs", {token:request.csrfToken()})
}
})
<form method="POST" action="/addimage" enctype="multipart/form-data">
<div class="form-group">
<label for="headline">Headline</label>
<input class="form-control" type="text" id="headline" name="headline" required>
</div>
<div class="form-group">
<label for="image" required>Choose a image</label>
<input type="file" class="form-control-file" id="image" name="image" value="upload image" required accept="image/x-png,image/jpeg">
</div>
<input type="hidden" name="_csrf" value="{{token}}">
<button type="submit" class="btn btn-primary mb-2">Create</button>
</form>
登录和注销表单也可以正常工作,而其他一些表单则无法正常工作。我不知道是怎么回事。 我可以补充一点,当我查看 _csrf cookie 时,值不会改变。
【问题讨论】: