Vapor 是否支持从 HTML 表单中删除?

Does Vapor support DELETE from HTML Form?

要通过管理面板删除用户,我想从 HTML 表单中触发删除请求。 Swift Vapor 是否支持 put/patch/delete 通过隐藏的 html 输入类似于例如Laravel?如果不是,删除内容的正确方法是什么?

<!-- Laravel example -->
<input type="hidden" name="_method" value="DELETE">

https://laravel.com/docs/7.x/routing#form-method-spoofing

对于任何围绕 his/her 思考同一件事的人。正如评论所说,我决定采用 post 请求的方式。我按如下方式注册了我的路线:

func boot(routes: RoutesBuilder) throws {
    let user = routes.grouped("user")
    user.get(use: getAll)
    user.get(":userid", use: getOne)
    user.post(use: create)
    user.post(":userid","delete", use: delete)
}

RoutesBuildergetpost(等等...)只是围绕 on 方法的辅助函数。

DELETE HTTPMethod 有一个辅助函数:

func boot(routes: routesBuilder) throws {
    let user = routes.grouped("user")
        user.delete(":userid", use: self.delete)
    ...
}

另外,您可以通过on方法手动指定HTTPMethod

func boot(routes: routesBuilder) throws {
    let user = routes.grouped("user")
        user.on(.DELETE, ":userid", use: self.delete)
    ...
}