REST API / 删除方法 / Slim Framework v3
REST API / DELETE METHOD / Slim Framework v3
我目前正在学习如何使用适用于 PHP 的 Slim Framework v3 构建我自己的 REST API。我找到了几个教程并且能够构建多个路由以将 GET 和 POST 请求发送到我的 MySQL 数据库。
接下来是删除请求,但它不起作用。
这是我的代码:
$app->delete('/usuario/[{correo}]', function ($request, $response, $args) {
$sth = $this->db->prepare("DELETE FROM usuarios WHERE email=:correo");
$sth->bindParam("correo", $args['correo']);
$sth->execute();
$todos = $sth->fetchAll();
return $this->response->withJson($todos);
});
我在 Postman 中测试它,我总是遇到同样的问题:404 未找到。
我无法理解,因为我认为 url 是正确的 (http://localhost:8080/usuario/bbb@bbb.es
)。
Postman view
谁能帮帮我?
我认为问题出在您发送到路由的参数中
您不能在路线中将点作为字符发送 URL
如果你测试
我想如果你测试 http://localhost:8080/usuario/bbb@bbbdotes
它会正常工作
您可以在正文中发送电子邮件地址而不是在 url
{"email":"bbb@bbbdotes"}
然后你可以像POST路由一样处理它来获取电子邮件地址
我目前正在学习如何使用适用于 PHP 的 Slim Framework v3 构建我自己的 REST API。我找到了几个教程并且能够构建多个路由以将 GET 和 POST 请求发送到我的 MySQL 数据库。 接下来是删除请求,但它不起作用。
这是我的代码:
$app->delete('/usuario/[{correo}]', function ($request, $response, $args) {
$sth = $this->db->prepare("DELETE FROM usuarios WHERE email=:correo");
$sth->bindParam("correo", $args['correo']);
$sth->execute();
$todos = $sth->fetchAll();
return $this->response->withJson($todos);
});
我在 Postman 中测试它,我总是遇到同样的问题:404 未找到。
我无法理解,因为我认为 url 是正确的 (http://localhost:8080/usuario/bbb@bbb.es
)。
Postman view
谁能帮帮我?
我认为问题出在您发送到路由的参数中
您不能在路线中将点作为字符发送 URL
如果你测试
我想如果你测试 http://localhost:8080/usuario/bbb@bbbdotes
它会正常工作
您可以在正文中发送电子邮件地址而不是在 url
{"email":"bbb@bbbdotes"}
然后你可以像POST路由一样处理它来获取电子邮件地址