0

我发现在 Vapor 中更新记录的唯一方法是:

drop.get("update") { request in

  guard var first = try Acronym.query().first(),
    let long = request.data["long"]?.string else {
    throw Abort.badRequest
  }
  first.long = long
  try first.save()
  return first

}

但是,这不是一种非常 RESTful 的方式,因为它使用参数而不是 PUT 请求执行 GET 请求。

如何在 Vapor 中执行 PUT 请求?

4

2 回答 2

2

事实证明,执行 PUT 以及其他 HTTP 方法就像更改.get().post().put()或任何其他 HTTP 方法一样简单。

至于我的问题,要在 Vapor 中创建 PUT 函数,只需添加一个.put采用Int(或字符串,或您想要的任何数据类型)的方法,并接受JSON(或您想要的任何格式),然后简单地更新就像它是一个 POST 请求。

于 2016-11-20T12:46:18.610 回答
0
drop.put("update") { request in
  guard var first = try Acronym.query().first(),
    let long = request.data["long"]?.string else {
    throw Abort.badRequest
  }

  first.long = long
  try first.save()

  return first
}
于 2016-11-23T19:05:09.807 回答