php中ajax不返回json返回字符串直接进入error

Posted 染卷

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php中ajax不返回json返回字符串直接进入error相关的知识,希望对你有一定的参考价值。

ajax返回数据类型与预期不符合会直接进入error,有时发现返回明明是json字符串还是今入error,其实是返回的所谓json字符串有其他隐藏的符号里面。

1、ajax提交的前注明返回数据类型?dataType : “jsonp” 注意大小写!

2、被请求php页面只能有一个输出,不要有其他的html代码,比如空格什么的,如:

<?php

$data=array("code"=>1,"msg"=>"ok");
echo json_encode($data);
exit;

3、确保被请求的php页面引用或包含的其他php文件格式一定要是utf-8无bom格式!注意include、require的文件甚至所有的php文件都不要用记事本打开!不要图方便直接使用记事本编辑php内的配置或参数值!

4、注意版本低于php5.3?的php环境可能不支持json?

5、如果是使用字符串自行拼接json的话,需要使用严格的json格式,不管是什么类型全部用双引号!{‘name’: ‘Michael’}? <===这是错误的写法!? 正确写法==>{“name”: “Michael”}? ,你拼接后的写法是否正确可以在线json校验一下:http://www.bejson.com/? ?,在php中可能在输出你拼接的json字符串前还需要这段代码?header(‘Content-Type:application/json; charset=utf-8’);

基于互联网精神,在注明出处的前提下本站文章可自由转载!

本文链接:https://ranjuan.cn/php中ajax不返回json返回字符串直接进入error/


以上是关于php中ajax不返回json返回字符串直接进入error的主要内容,如果未能解决你的问题,请参考以下文章

jquery ajax请求成功,但是进入了success,但是返回的数据data为空

jquery ajax请求成功,但是进入了success,但是返回的数据data为空

Echart地图城市用json返回格式

ajax json 请求时,如果返回的不是字符串,不是json 请问怎么处理?

返回报文中,请求参数为空,该怎么解决

ajax返回json时,js获取类型,是字符串类型