Codeigniter RESTful API服务器 [英] Codeigniter RESTful API Server

查看:176
本文介绍了Codeigniter RESTful API服务器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图在Codeigniter中创建RESTful API服务器。到目前为止,我遵循从这里获得的说明 https://github.com/philsturgeon/codeigniter-restserver 。到目前为止这么好,我创建了一个简单的控制器来测试,所以我构建一个hello.php:

I'm trying to create the RESTful API server in Codeigniter. So far, i followed the instructions i got from here https://github.com/philsturgeon/codeigniter-restserver. So far so good, I created a simple controller to test, so i build a hello.php:

<?php 

include(APPPATH.'libraries/REST_Controller.php');

class Hello extends REST_Controller {
  function world_get() {
    $data->name = "TESTNAME";
    $this->response($data); 
  }
}

?>

当我尝试通过输入 http:// localhost / peojects /ci/index.php/hello/world 我得到错误:

When I try to run it by entering http://localhost/peojects/ci/index.php/hello/world I get the error:

<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">

<h4>A PHP Error was encountered</h4>

<p>Severity: Warning</p>
<p>Message:  Creating default object from empty value</p>
<p>Filename: controllers/hello.php</p>
<p>Line Number: 7</p>

</div>{"name":"TESTNAME"}

这里的问题是什么?

推荐答案

$ data 已设置/定义。你需要做一些事情: $ data = new StdObject; ,然后为它指定属性: $ data - > name =TESTNAME;

$data has not previously been set/defined. You would need to do something like: $data = new StdObject; and then assign properties to it: $data -> name = "TESTNAME";

class Hello extends REST_Controller {
  function world_get() {
    $data = new StdObject;
    $data->name = "TESTNAME";
    $this->response($data); 
  }
}

或者根据示例,

class Hello extends REST_Controller {
  function world_get() {
    $data = array();
    $data['name'] = "TESTNAME";
    $this->response($data); 
  }
}

这篇关于Codeigniter RESTful API服务器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆