我目前正在学习如何使用适用于PHP的Slim Framework v3构建自己的REST API。我发现了几个教程,并且能够构建多条路由来将GET和POST请求发送到我的MySQL数据库。Slim Framework v3 - REST API - 删除
接下来是我的一个删除请求。我发现了一个教程,呈现如下的一段代码:
$app->delete('/todo/[{id}]', function ($request, $response, $args) {
$sth = $this->db->prepare("DELETE FROM tasks WHERE id=:id");
$sth->bindParam("id", $args['id']);
$sth->execute();
$todos = $sth->fetchAll();
return $this->response->withJson($todos);
});
在此之前我做了我删除的路线(是,这些术语的正确使用?)几乎是相同的,只是我没有任何回报。这段代码让我想知道:删除请求返回什么是“常见”?从我的理解这个请求是假设返回表中的所有其他条目“任务” - 这是一个好的做法?一般来说,如果删除请求返回某些内容,是否是“良好”的做法 - 如果是:什么?我正在尝试适应最常见的做法。
在旁注:我试图使用像这样的引用请求,并能像往常一样删除一些东西。但是,它根本不返回任何东西。
误差如下:
[...]
<h1>Slim Application Error</h1>
<p>The application could not run because of the following error:</p>
<h2>Details</h2>
<div>
<strong>Type:</strong> PDOException
</div>
<div>
<strong>Code:</strong> HY000
</div>
<div>
<strong>Message:</strong> SQLSTATE[HY000]: General error
</div>
<div>
<strong>File:</strong> /www/htdocs/src/routes.php
</div>
<div>
<strong>Line:</strong> 68
</div>
[...]
68行是在我的情况 “$待办事项= $ sth->使用fetchall();”。
要添加关于“良好实践”的另一个问题:我想检查通过删除请求给出的ID是否存在 - 是否将包含在路由中(检查它是否存在) ?还是有另一种做这种检查的做法?
非常感谢。