我在静态HTML页面中有这段代码:
$(".js-submitbutton").click(function(){
var title = $("#title").val();
var subtitle = $("#subtitle").val();
var imageurl = $("#imageurl").val();
var telephone = $("#telephone").val();
var address = $("#address").val();
var category = $("#category").val();
var keywords = $("#keywords").val();
var website = $("website").val();
var listofkeywords = keywords.split(',');
var data = {
title: title,
subtitle: subtitle,
image_url: imageurl,
telephone: telephone,
address: address,
category: category,
keywordslist: listofkeywords,
website: website
};
console.log(data);
$.ajax({
type: "POST",
url: "https://kakaobot.herokuapp.com/api_v1",
contentType: "application/json; charset=utf-8",
data: data,
dataType: "json",
success: function(result){
console.log(result);
}
})
})
在服务器上,管理POST请求:
db.title = req.body.title;
db.subtitle = req.body.subtitle;
db.image_url = req.body.image_url;
db.telephone = req.body.telephone;
db.address = req.body.address;
db.category = req.body.category;
db.keywords = req.body.keywordslist;
db.save()
问题在于,当我在HTML页面按.js-submitbutton时,它会收集数据并向服务器发送正确的JSON,但在服务器日志中, keywordslist 显示为 keywordslist [ ] ,这使我无法将其保存到数据库中。 当然,我总是可以更改服务器代码以接受 keywordslist [] ,但除非没有其他选择,否则我不想这样做。 非常感谢您的帮助,SO社区,我真的很感激。
答案 0 :(得分:1)
发表评论作为答案。
客户端的变更:
var listofkeywords = keywords.split(',');
为:
var listofkeywords = keywords;