.net core上利用nodeservice处理js代码,当传入json字符串解析出错

直接上代码
这是我的controller代码

[HttpGet]
        public async Task<string> Get()
        {
            //CheckUser();
            string str = "{\"name\":\"json\"}";
            var msg = await _nodeServices.InvokeExportAsync<string>("hello", "f2", str);
            return msg;
        }

这是我的js代码

module.exports.f2 = function (callback, str) {
    var json = JSON.parse(str);
    json.name = "jsonjson";
    callback(null, json);
};

但是利用postman调用时总是出现
sonReaderException: Unexpected character encountered while parsing value: {. Path '', line 1, position 1.错误
实在是不知道为什么出错,是nodeService的问题吗

1个回答

问题已解决,因为

var msg = await _nodeServices.InvokeExportAsync<string>("hello", "f2", str);

返回类型为string,而js代码里直接返回了json对象,存在一个转化问题
在js里将其转为字符串穿回来就不出错了

module.exports.f2 = function (callback, str) {
    var json = JSON.parse(str);
    json.name = "jsonjson";
    callback(null, JSON.stringify(json));
};
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐