Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.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
Json Http响应主体具有来自Dart渡槽服务器的引号_Json_Dart_Httpresponse_Aqueduct - Fatal编程技术网

Json Http响应主体具有来自Dart渡槽服务器的引号

Json Http响应主体具有来自Dart渡槽服务器的引号,json,dart,httpresponse,aqueduct,Json,Dart,Httpresponse,Aqueduct,当从这样的渡槽控制器返回响应时 return Response.ok('hello'); 响应主体周围有引号: "hello" 当我返回类似于以下情况的JSON字符串时,同样的事情是: return Response.ok('{"token":"$token"}'); 我明白了: "{\"token\":\"eyJhbG...soOFY8\"}" 这会破坏客户端的JSON解析 有没有办法不发送引号?响应的默认内容类型已经是JSON了。如果要发送平面文本,则需要将内容类型设置为纯文本 //

当从这样的渡槽控制器返回响应时

return Response.ok('hello');
响应主体周围有引号:

"hello"
当我返回类似于以下情况的JSON字符串时,同样的事情是:

return Response.ok('{"token":"$token"}');
我明白了:

"{\"token\":\"eyJhbG...soOFY8\"}"
这会破坏客户端的JSON解析


有没有办法不发送引号?

响应的默认内容类型已经是JSON了。如果要发送平面文本,则需要将内容类型设置为纯文本

// import 'dart:io';

return Response.ok('hello')..contentType = ContentType.text;
响应机构将是

hello
要发送JSON,只需发送一个映射,而不是自己将其转换为字符串:

return Response.ok({'token':token});
这将给出一个响应体

{"token":"eyJhbGc...vCxdE"}
另见
信用 感谢您对解决此问题的帮助。我在这里添加解决方案作为问答,以便其他人可以更容易地找到它