thinkphp5 返回json数据为空的解决方法

1、用SoapUI来测试借口,Content-Type不是json,而是text/html;

2、自己的接口,最后的数据用了json_encode,也是不管用的;

3、用header来设置Content-Type也没有效果;

4、而改框架的配置default_return_type 为json,这也是不可取的,整站是网站需要返回的还是text/html;

综上情况,没有识破原理层面的问题根源,但是找到了一个解决办法:

在你这个接口方法里面的第一行单独写上以下这句:

Config::set(‘default_return_type‘, ‘json‘);

这样这个配置适用于这个方法,不会影响其他方法,而且返回的数据Content-Type是json 的。

返回json好像有三种方法

1.使用原生的php语句

echo json_encode()

2.有一些是这样说的,使用ajaxReturn函数返回

$arr[‘name‘]=$picname;

$arr[‘pic‘]=$pics;

$arr[‘size‘]=$size;

$this->ajaxReturn ($arr,‘JSON‘);

3.有的说tp返回的时候,使用json函数

echo json(XXXX)

到底应该使用哪个呢?

三者的区别

1.json()函数,和halt函数,dump函数,jsonp函数一样,都是助手函数,可以使用。

但是真正使用的时候,报出这种错误

Object of class think\response\Json could not be converted to string

可能是这种错误

后来发现是UTF-8的BOM头问题

搞的很费劲,还是用原生的写法吧

2.json_encode是原生的php,更容易上手。

3.ajaxReturn,这个就不明白了,好像用起来挺费劲

原文:https://www.cnblogs.com/cn-oldboy/p/13262184.html

return 输出为空php,thinkphp5 返回json数据的方法---以及返回json为空的原因相关推荐

  1. python处理大数据量json数据的方法_python-利用json模块处理json数据几个函数总结...

    1.前言 json是一种轻量级的数据交换格式,它是JavaScript的子集,易于人阅读和编写. 前端和后端进行数据交互,其实就是JS和Python进行数据交互. 接口间或者前后端间的语言不一致,不同 ...

  2. Spring MVC 3.0 返回JSON数据的方法

    Spring MVC 3.0 返回JSON数据的方法 1. 直接 PrintWriter 输出 2. 使用 JSP 视图 3. 使用Spring内置的支持 // Spring MVC 配置 <b ...

  3. python返回json数据_python和flask中返回JSON数据的方法

    在python中可以使用json将数据格式化为JSON格式: 1.将字典转换成JSON数据格式: s=['张三','年龄','姓名'] t={} t['data']=s return json.dum ...

  4. java 控制器 返回 json_SpringMVC中controller返回json数据的方法

    java 控制器 返回 json_SpringMVC中controller返回json数据的方法 1.方法一: 使用springmvc原生注解@ResponseBody @ResponseBody @ ...

  5. 29-30Python多线程、多线程、使用threading模块创建线程;JSON数据解析、编码为JSON类型转换对应表、Python类型转换对应表、json.dumps与json.loads

    29Python3多线程 多线程类似于同时执行多个不同程序,多线程运行有如下优点: 使用线程可以把占据长时间的程序中的任务放到后台去处理. 用户界面可以更加吸引人,比如用户点击了一个按钮去触发某些 ...

  6. QT中Json的使用方法(类和json字符串相互转换的方法)

    在QT5.0版本以后支持对Json的使用,直接使用QT提供的json类进行数据的组织和解析. Json类 介绍 QJsonDoucument 它封装了一个完整的 JSON 文档,并且可以从 UTF-8 ...

  7. ASP.NET提取多层嵌套json数据的方法

    ASP.NET提取多层嵌套json数据的方法 本文实例讲述了ASP.NET利用第三方类库Newtonsoft.Json提取多层嵌套json数据的方法,具体例子如下. 假设需要提取的json字符串如下: ...

  8. html页面加载json数据,在html中显示JSON数据的方法

    背景: 有时候我们需要将json数据直接显示在页面上(比如在做一个接口测试的项目,需要将接口返回的结果直接展示),但是如果直接显示字符串,不方便查看.需要格式化一下. 解决方案: 其实JSON.str ...

  9. springMVC之与json数据交互方法

    2019独角兽企业重金招聘Python工程师标准>>> 因为我也要返回json数据.所以需要这个注解@ResponseBody,把Java对象转换成json字符串 注意:  1.@R ...

最新文章

  1. 20189217 2018-2019-2 《移动平台开发实践》第9周学习总结
  2. 201105阶段二qt创建简单工程
  3. tensorflow-eagerAPI
  4. SAP CRM WebClient UI Selenium UiElementHandler的实现
  5. [机器学习] XGBoost参数调优完全指南(附Python代码)
  6. enum操作--获取枚举里的最大值
  7. 计算机网络:九大命令!解决网络故障新思路
  8. c#sql数据导出到excel
  9. linux 查tls模块,TLSSLed · Kali Linux Tools Documents · 看云
  10. NestedScrollView、RecycleView、ViewPager 嵌套常见问题
  11. RabbitMQ在Windows下设置服务启动
  12. C语言利用栈计算算式(表达式)
  13. Unity3D(四)Camera和SkyBox
  14. nginx针对请求的uri来代理
  15. radio后台数据回显
  16. 移动硬盘提示“需要格式化”
  17. 修改登录密码html代码,html登录界面设置账号密码
  18. IP前缀列表配置实验
  19. 手机测试人员的思维过程
  20. Xcode MacOS与clang c++版本关系

热门文章

  1. 【Flink】解决Flink在测试环境无法保存checkpoint问题
  2. 【SQL】血缘解析 SQL parser 工具介绍
  3. Elasticsearch】es memory locking requested for process but memory is not locked
  4. 【Java】java jmx 入门案例
  5. alibaba fastJson框架快速解析复杂有重复性质的json
  6. 78-spark2.2的编译
  7. 60-320-040-使用-去重-HyperLogLog 去重计数
  8. 95-136-043-源码-Operator-CoProcessOperator
  9. drools 7.x集成SparkStream 2.x
  10. dubbo注册中心的细节