【发布时间】:2022-01-12 18:41:34
【问题描述】:
我正在 API 响应中的 NodeJS 中创建 api 我得到 / 这个字符
以下是我的 api 响应:
static async getAdminOrders(logId, callback) {
logger(logId, `Getting all orders of the stylist ${logId}`);
const queryStr = 'SELECT order_details FROM stylist_order';
Util.executeQuery(queryStr,logId).then((result) => {
callback(false, result || [], Util.statusCodes.SUCCESS);
var str = JSON.stringify(result);
// Remove \ from the string
var str1 = str.replace(/\\/g,'');
// Convert updated string back to object
var newObj = JSON.parse(str1);
console.log(newObj);
}).catch((error) => {
logger(logId, error);
callback(true, { message: 'Failed to fetch order detials' }, Util.statusCodes.INTERNAL_SERVER_ERROR);
});
}
在控制台中删除不需要的字符后,它不会返回对象,但是当我执行console.log(str1) 时,它的返回字符串没有/。问题是 newObj 未显示。
有人告诉我我做错了什么。
【问题讨论】:
-
您的 API JSON.stringifying 数据两次。修复你的后端,而不是在前端乱搞。
-
为什么需要替换字符?它只是逃避引号。只需调用 JSON.parse 而无需尝试替换它们。
-
请不要向 StackOverflow 发送相同问题的垃圾邮件以获得更多关注。 stackoverflow.com/questions/70270363/…
标签: javascript node.js