我需要使用打印json数据。这是我的密码
'use strict';
console.log('Loading function');
exports.handler = (event, context, callback) => {
  var addon = require('./path/to/addon');
  var sampleData=addon.getSampleData(userId);
  console.log(sampleData); // it will print correct json data
  //var sampleData="{ \"data\":{ \"key1\": \"1472722877992\", \"key2\": [ 814, 809] }}";
   callback(null, sampleData);
};我得到了这样的输出
"{ \"data\":{ \"key1\": \"1472722877992\", \"key2\": [ 814, 809] }}"但是我需要这样的输出
"{ "data":{ "key1": "1472722877992", "key2": [ 814, 809] }}"在这段代码中,我使用代码创建了一个npm库addon。getSampleData是c++代码中的一种方法。它将返回一个json格式化字符串(不是json对象),.in我的node.js代码,控制台日志打印正确的json字符串。
但执行此lambda函数时,请使用Slashes返回输出。如何解决这个问题。
发布于 2016-09-03 13:53:12
"{ "data":{ "key1": "1472722877992", "key2": [ 814, 809] }}"不是有效的字符串。这是一个双引号字符串,其中嵌入了非转义双引号。那是无效的。
您是否尝试过对字符串使用单引号,就像这样?
var sampleData='{ "data":{ "key1": "1472722877992", "key2": [ 814, 809] }}';
或者您是否尝试过像这样返回一个JSON对象?
var sampleData={ "data":{ "key1": "1472722877992", "key2": [ 814, 809] }};
基于新信息的编辑:
尝试将字符串转换为如下所示的JSON对象:
callback(null, JSON.parse(sampleData));
https://stackoverflow.com/questions/39304842
复制相似问题