【发布时间】:2021-12-16 00:08:13
【问题描述】:
我有一个查询,我正在使用本地存储将数据从一个页面传递到另一个页面。之后,我获取该数据并制作一个字符串。然后我将该 json 字符串传递给 sessionStorage 以用作我的 ajax 请求的数据。但我总是将这些数据作为 { 'object Object': '' }.
我的代码,
const parsedData = JSON.parse(localStorage.getItem('myData'));
console.log(parsedData,"parsedData");
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));
................. then i access this data in another function,
function graphApi(){
const apiValue = (sessionStorage.getItem('user'));
console.log(apiValue,"apivalue new")
/*var dat ={
"pid":"WEB506",
"session":"WEB506_09092021_M1_S2.csv"
};*/
$.ajax({
type: "POST",
data: apiValue ,
url: "http://localhost:5000/file",
success: function (data) {
console.log(data)
},
error: function(err){
alert(err);
}
请帮忙,我坚持了一段时间。
另外,这是我的控制器api,
File: async (req, res, next) => {
console.log('---------------');
console.log( req.body); this is where i get { 'object Object': '' }
console.log('---------------');
try{
if(!req.body){
throw new Error("sorry no data, error occured")
}
const {pid, session} = req.body;
const user = await models.graph_data.findAndCountAll({
attributes: [
"document"
],
【问题讨论】:
-
您在每个循环中设置
.setItem('user')。每次都被覆盖。最后只剩下最后一个值 -
所以你建议?
-
你从哪里得到
{ 'object Object': '' }?这段代码中有三个console.log -
好吧,我建议不要在每个循环中覆盖相同的会话变量 :) 我只是指出显而易见的
-
我已将其添加到我的问题中。我的 req.body 给出 { 'object Object': '' } ,即我的 ajax 发送正确吗?
标签: javascript node.js ajax object