JSON串int自动添加“”变成字符串

2018-08-08  本文已影响0人  阿_贵

//JSON_UNESCAPED_UNICODE:显示中文   ->   可以作为第一个例子

本地环境Mac,MAMP PRO 4.2,访问api

http://localhost:8888/api/heroes/1     得到正确的 11 

{"id":1,"name":"mike","age":11,"comment":""}

远程godaddy,访问api

http://www.empirecclt.com.au/public/api/heroes/1    得到错误的“11”

{"id":1,"name":"mike","age":"11","comment":""}

答案:在lavarel的api接口找到返回json串的地方,改成如下:

return json_encode($hero,JSON_NUMERIC_CHECK|JSON_UNESCAPED_UNICODE); 

//JSON_UNESCAPED_UNICODE:显示中文

//JSON_NUMERIC_CHECK:不加它,服务器返回都是字符串,int是字符串(但是本地执行时返回int),null是空串

或者

return response()->json($heroes,200,[],JSON_PRETTY_PRINT|JSON_NUMERIC_CHECK|JSON_UNESCAPED_UNICODE);

//JSON_PRETTY_PRINT:格式化输出,去掉自动添加的'\'

上一篇 下一篇

猜你喜欢

热点阅读