文章介绍

 织梦json标签是用于调用某个远程连接的json接口,方便同远程站点之间进行通信来调取内容。这个标签可以很方便的对一些网站开放的API接口进行对接。需要注意的是,所传递的数据需要是UTF-8编码格式,否则可能会出现乱码。标签语法:

  {dede:json url='http://yoursite/json.php' cache=300}

  [field:id/]-[field:title/]

  {/dede:json}

  标签参数:

  url='' //远程json接口地址

  cache=300 //缓存时间,0为不缓存

  标签示例:

  我们首先编写一个简单的服务器端API,将其存放在系统根目录/api下,由于系统是GB2312编码,所以服务端编写的时候我们进行了一些编码转换的处理,保证服务端访问的编码是UTF-8即可。

  $cfg_NotPrintHead = false;

  header("Content-Type: text/html; charset=utf-8");

  include_once (dirname(__FILE__)."/../include/common.inc.php");

  error_reporting(E_ALL || ~E_NOTICE);

  require_once(DEDEINC.'/json.class.php');

  $reval = array();

  $dsql->SetQuery("SELECT id,title FROM `dede_archives` ORDER BY id DESC LIMIT 0,10");

  $dsql->Execute('me');

  while ($row = $dsql->GetArray('me')) {

  $row['title'] = gb2utf8($row['title']);

  $reval[] = $row;

  }

  $json = new Services_JSON(SERVICES_JSON_SUPPRESS_ERRORS);

  echo $json->encode($reval);

  ?>

  通过地址(注意修改为你自己的域名)我们可以访问到刚才编写的服务端文件。

 下面我们就可以通过标签来进行访问。

  {dede:json url='http://www.dede.com/api/arcticle.php' cache=0}

  [field:id/]-[field:title/]

  {/dede:json}

 $row[] = $dsql->GetOne(“SELECT * FROM dede_archives WHERE id=88”);

  然后将这个数组通过JSON格式化进行处理。

免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。