【发布时间】:2021-12-01 15:17:21
【问题描述】:
我正在使用 express 和 ejs 开发一个网站。我遇到了需要通过 ajax 调用 api 的麻烦。问题出在按钮上,我将两个值传递给 ajax 数据。但它给出了错误,我尝试了很多方法,我搞砸了。我是新手,请在下面找到我的代码。
const parsedData = JSON.parse(localStorage.getItem('myData'));
const container = document.getElementById('s1');
parsedData.data.rows.forEach((result, idx) => {
var a = result.master_id;
var b = result.session_name;
console.log(a,b,"a","b")
var userData = {"pid":a,"session" :b};
console.log(userData,"userData");
sessionStorage.setItem("user", JSON.stringify(userData));
console.log(userData,"data for api");
const card = document.createElement('div');
card.classList = 'card';
const content = `
<div class="row">
<div class="card-body" onclick="graphApi()">
</div>
</div>
`;
container.innerHTML += content;
});
function graphApi(){
var apiValue =JSON.parse( sessionStorage.getItem("user"));
console.log(apiValue, "value from card");
$.ajax({
type: "POST",
data: apiValue,
dataType:"json",
url: "http://localhost:5000/graphFromcsv",
success: function(data) {
console.log(data,"graph api");
}
error: function(err){
alert("graph api failed to load");
console.log(err);
},
});
我总是在 api 值 undefined 和 400 badrequest 中得到这个 pid。但如果我使用像这样的原始数据,
{
"pid":"WE6",
"session":"W.csv"
}
而不是 apiValue 我的 ajax 是成功的,我正在获取数据。我正在使用这些数据来绘制多线图。任何帮助表示赞赏。
【问题讨论】:
-
删除数据类型:json
-
我试过了,但没有帮助
-
你的意思是
data: apiValue而不是data: { apiValue }? -
数据:apiValue。我在这个问题上写的不正确,对不起。但不在我的代码中
标签: javascript node.js json ajax express