Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 从MySQL返回的JSON中的单引号在返回到flatter调用时变为特殊字符_Node.js_Flutter - Fatal编程技术网

Node.js 从MySQL返回的JSON中的单引号在返回到flatter调用时变为特殊字符

Node.js 从MySQL返回的JSON中的单引号在返回到flatter调用时变为特殊字符,node.js,flutter,Node.js,Flutter,我面临一个问题,一个字符串中的单引号/撇号,然后发送到NodeJSRESTAPI,然后插入到MySQL中的JSON字段中,当我得到相同的JSON并返回到从Flatter发出的调用时,JSON在我卷曲时看起来正确,在我打印出来时也正确。当flatter得到响应时,我使用restify和res.json(json)。body单引号现在是一些特殊字符“a,上面有一个移位6”。我尝试过替换,严格化,但不明白为什么它会被改变,它不会发生在让我想到它飘动的路上,但找不到如何或如何处理它 任何有想法的人都会很

我面临一个问题,一个字符串中的单引号/撇号,然后发送到NodeJSRESTAPI,然后插入到MySQL中的JSON字段中,当我得到相同的JSON并返回到从Flatter发出的调用时,JSON在我卷曲时看起来正确,在我打印出来时也正确。当flatter得到
响应时,我使用restify和
res.json(json)
。body
单引号现在是一些特殊字符“a,上面有一个移位6”。我尝试过替换,严格化,但不明白为什么它会被改变,它不会发生在让我想到它飘动的路上,但找不到如何或如何处理它

任何有想法的人都会很好,让我知道你想看的任何代码

{"oid":1,"pid":1,"sub":"Re: Sarah Doe","prid":"1","oname":"Referring Doctor","pname":"Amar Patel","msgkey":"d47f6e81-8c8e-4209-a073-03a8d2e79356","pgrpid":"1","sender":"o","message":"This is to test the apostrophe that can’t be used","fcmtoken":null,"receiver":"p","sendname":"Referring Doctor","submitdate":"2017-11-06 05:24:25.015089","receivename":"Amar Patel","referralname":"Sarah Doe"}
它永远不会改变,它总是这样,我一直在努力

replace("'","\'") 
我也试过了

replace(/\'/g, '"')
这是许多迭代中的一个

for (var i = 0; i < results.length; i++) {
                //console.log('****RESULT****CHAT***: ', results[i].chat);
                var myrecord = results[i].chat;
                //console.log('MYRECORD: '+myrecord);
                //console.log('MYRECORD-STRING: '+JSON.stringify(myrecord));
                var json = myrecord.replace(/\'/g, '"');
                //console.log('JSON-REPLACE: '+json);
                myjson.push(JSON.parse(json));

            }
for(var i=0;i

似乎没有任何内容会影响消息节点中的单引号。

这与iOS 11和智能标点符号的添加有关。因此,会发送一个卷曲引号,而不是真正的单引号。不幸的是,它没有公开以关闭它,现在您必须选择一个url或电子邮件键盘来关闭它。

可以吗请将JSON的受影响部分添加到您的问题中(转换前后的外观如何)?代码已经添加。这里涉及很多组件(数据库、服务器、客户端)。有必要找出是什么步骤导致
变成了那个奇怪的字符。我同意,如果你对这个卷曲做一个卷曲,你会看到返回值与',很好,但是当flatter得到响应时。body它有这个字符,所以不确定它的flatter是否正在执行此操作,但是由于卷曲返回了正确的JSON,很难确定这是nodejs。我不知道为什么,虽然我从来没有让它替换为转义字符。发送/接收的头有什么区别吗?比如字符集?