*已修复*** 原来我的浏览器被缓存了!它一直在工作。我对代码所做的唯一更新是在发布评论后更新结果,这样我就可以在 json 响应中取回信息。
return $result->comment = array('video_id'=>"$video_id",'fb_id'=>"$fb_id",'comment'=>"$comment");
我无法将表单中的值发布到 restler。我不确定我做错了什么。
当我尝试发布我的表格时,我得到了回报:
{ “错误”: { “代码”:404, “未找到信息” } }
这是我的表单代码(comment.html):
<form action="http://mysite.com/api/index.php/comment" method="post">
<label>fb_id</label>
<input type="text" name="fb_id">
<label>video_id</label>
<input type="text" name="video_id">
<label>comment</label>
<input type="text" name="comment">
<input type="submit" value="Post" name="submit">
</form>
这是我的课程的代码(comment.php):
类评论{ 静态 $FIELDS = array('video_id', 'fb_id','comment'); 公共 $restler; 公共函数插入($rec){ $video_id = mysql_escape_string($rec['video_id']); $fb_id= mysql_escape_string($rec['fb_id']); $comment = mysql_escape_string($rec['comment']); $sql = "插入评论(video_id,fb_id,comment) VALUES('$video_id','$fb_id','$comment')"; mysql_query($sql); 返回“插入记录”; } 公共功能发布($request_data=NULL){ 返回 $this->insert($this->_validate($request_data)); } 私有函数 _validate($data){ $comment=数组(); foreach (注释::$FIELDS as $field) { if(!isset($data[$field]))throw new RestException(417,"$field field missing"); $comment[$field]=$data[$field]; } 返回$评论; } }
如果有人可以帮忙,我所有的其他 API 调用都适用于 GET。这是我遇到问题的POST。