全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

ajax调用返回php接口返回json数据的方法(必看篇)

php代码如下:

<?php

  header('Content-Type: application/json');
  header('Content-Type: text/html;charset=utf-8');

  $email = $_GET['email'];

  $user = [];

  $conn = @mysql_connect("localhost","Test","123456") or die("Failed in connecting database");
  mysql_select_db("Test",$conn);
  mysql_query("set names 'UTF-8'");
  $query = "select * from UserInformation where email = '".$email."'";
  $result = mysql_query($query);
  if (null == ($row = mysql_fetch_array($result))) {
    echo $_GET['callback']."(no such user)";
  } else {
    $user['email'] = $email;
    $user['nickname'] = $row['nickname'];
    $user['portrait'] = $row['portrait'];
    echo $_GET['callback']."(".json_encode($user).")";
  }

?>

js代码如下:

<script>
    $.ajax({
      url: "http://test.localhost/UserInterfaceForChatroom/UserInformation.php?email=pshuyue@gmail.com",
      type: "GET",
      dataType: 'jsonp',
      //      crossDomain: true,
      success: function (result) {
        //        data = $.parseJSON(result);
        //        alert(data.nickname);
        alert(result.nickname);
      }
    });
  </script>

其中遇到了两个问题:

1、第一个问题:

Uncaught SyntaxError: Unexpected token :

解决方案如下:

This has just happened to me, and the reason was none of the reasons above. I was using the jQuery command getJSON and adding callback=? to use JSONP (as I needed to go cross-domain), and returning the JSON code {"foo":"bar"} and getting the error.

This is because I should have included the callback data, something like jQuery17209314005577471107_1335958194322({"foo":"bar"})

Here is the PHP code I used to achieve this, which degrades if JSON (without a callback) is used:

$ret['foo'] = "bar";
finish();

function finish() {
  header("content-type:application/json");
  if ($_GET['callback']) {
    print $_GET['callback']."(";
  }
  print json_encode($GLOBALS['ret']);
  if ($_GET['callback']) {
    print ")";
  }
  exit; 
}

Hopefully that will help someone in the future.

2、第二个问题:

解析json数据。从上面的javascript中可以看到,我没有使用jquery.parseJSON()这些方法,开始使用这些方法,但是总是会报

VM219:1 Uncaught SyntaxError: Unexpected token o in JSON at position 1的错误,后来不用jquery.parseJSON()这个方法,反而一切正常。不知为何。

以上这篇ajax调用返回php接口返回json数据的方法(必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# ajax调用返回json数据  # 原生js调用json方法总结  # json跨域调用python的方法详解  # JavaScript跨域调用基于JSON的RESTful API  # 微信小程序使用wx.request请求服务器json数据并渲染到页面操作示例  # 微信小程序通过api接口将json数据展现到小程序示例  # 微信小程序学习(4)-系统配置app.json详解  # 微信小程序如何调用json数据接口并解析  # 给大家  # 会报  # 第一个  # 希望能  # 第二个  # 可以看到  # 这篇  # 必看  # 小编  # 大家多多  # set  # names  # select  # query  # UTF  # mysql_query  # Failed  # die  # mysql_select_db  # database 


相关文章: 如何选择高效可靠的多用户建站源码资源?  如何在景安云服务器上绑定域名并配置虚拟主机?  建站中国官网:模板定制+SEO优化+建站流程一站式指南  股票网站制作软件,网上股票怎么开户?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  如何生成腾讯云建站专用兑换码?  建站之星如何防范黑客攻击与数据泄露?  c# 在高并发下使用反射发射(Reflection.Emit)的性能  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  网站制作难吗安全吗,做一个网站需要多久时间?  javascript基本数据类型及类型检测常用方法小结  c# Task.ConfigureAwait(true) 在什么场景下是必须的  网站网页制作电话怎么打,怎样安装和使用钉钉软件免费打电话?  西安大型网站制作公司,西安招聘网站最好的是哪个?  简单实现Android验证码  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  如何在建站之星绑定自定义域名?  金*站制作公司有哪些,金华教育集团官网?  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  整人网站在线制作软件,整蛊网站退不出去必须要打我是白痴才能出去?  公司网站制作需要多少钱,找人做公司网站需要多少钱?  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  内部网站制作流程,如何建立公司内部网站?  小程序网站制作需要准备什么资料,如何制作小程序?  网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?  如何选择CMS系统实现快速建站与SEO优化?  如何在万网开始建站?分步指南解析  建站之星图片链接生成指南:自助建站与智能设计教程  如何快速搭建虚拟主机网站?新手必看指南  装修招标网站设计制作流程,装修招标流程?  如何做静态网页,sublimetext3.0制作静态网页?  如何通过西部数码建站助手快速创建专业网站?  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  如何通过网站建站时间优化SEO与用户体验?  视频网站制作教程,怎么样制作优酷网的小视频?  网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片?  新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?  Python多线程使用规范_线程安全解析【教程】  如何快速建站并高效导出源代码?  建设网站制作价格,怎样建立自己的公司网站?  北京的网站制作公司有哪些,哪个视频网站最好?  建站主机数据库如何配置才能提升网站性能?  网站制作员失业,怎样查看自己网站的注册者?  韩国服务器如何优化跨境访问实现高效连接?  宁波免费建站如何选择可靠模板与平台?  建站主机类型有哪些?如何正确选型  建站之星后台密码遗忘如何找回?  济南企业网站制作公司,济南社保单位网上缴费步骤?  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  C#怎么使用委托和事件 C# delegate与event编程方法 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。