我正试图卷入我对 RESTful 服务的第一次真正尝试。
(我正在使用 @Phil-Sturgeon 放在一起的 codeigniter-restserver 库。)
该服务适用于 GET 请求。
另一方面,POST 正在向我扔一个曲线球。使用空POST 数组的尝试是成功的……所有其他的似乎都失败了。
代码:
/*** sandbox ***/
...
$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_URL, 'http://localhost/project/api/companies');
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_POST, 1);
// This works.
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, array());
// This throws the error
//curl_setopt($curl_handle, CURLOPT_POSTFIELDS, array('chicken'=>'licken'));
$buffer = curl_exec($curl_handle);
curl_close($curl_handle);
var_export($buffer);
...
/*** RESTful controller ***/
...
function companies_post(){
$this->response('It Works!', 200);
} // end method: companies_post()
...
错误:
当我的CURLOPT_POSTFIELDS
数组不是空的时候,我得到:
遇到错误
不允许您请求的操作。
目标:
我的直接目标是简单地在响应中返回 POST 有效负载,这样我就可以证明往返是有效的。
不过,在这一点上,我会满足于简单地将任何实质内容发布到 API 而不会引发错误:)
有人听说过这样的事吗?
我在这里想念什么?