删除方法有点问题。当执行删除方法时,它向我显示了
{
"error": true,
"reason": "The given data was not valid JSON."
}
签出
import Vapor
struct MyData: Content{
var id: Int
var name: String
var ersteller: String
var beschreibung: String
var urlLink: String
}
//______________________________GET______________________________//
/// Register your application's routes here.
public func routes(_ router: Router) throws {
var datas: [MyData] = []
var data1: MyData = MyData(id: 1,
name: "Telefonständer",
ersteller: "von Mike-vom-Mars",
beschreibung: "Faltbarer Tablet- und Handyhalter, der fünf verschiedene Kipppositionen ermöglicht. Dieser Halter benötigt keine Schrauben, einfach ausdrucken und zusammenstecken. Sehr stabil, platzsparend und tragbar.",
urlLink: "https://www.thingiverse.com/thing:3513800")
var data2: MyData = MyData(id: 2,
name: "Tool Caddy",
ersteller: "von Tom Link",
beschreibung: "Ein einfacher Werkzeugwagen für den 3D-Druck. Ca. 4,75 x 3,125 x 1,3 Zoll. Hält Messer, Pinzetten, Rasierklingenschaber, Klebestift, SD-Kartenadapter und ein Abfallfach.",
urlLink: "https://www.thingiverse.com/thing:2849473")
var data3: MyData = MyData(id: 3,
name: "Honey, I'm Home!",
ersteller: "von Luz Cabrera und Malorie Pangilinan",
beschreibung: "Honig-Schlüsselanhänger. Wenn Sie direkt auf die endgültige Farbe drucken, empfehle ich, 100% für das Rahmenteil und 105% für die kleinen Teile zu verwenden, damit sie besser in die Löcher passen. Wenn Sie jedoch die Teile bemalen, empfehle ich 100% beide.",
urlLink: "https://www.behance.net/gallery/16925735/Honey-Im-Home")
router.get("printdata") { req -> [MyData] in
return datas
}
datas.append(data1)
datas.append(data2)
datas.append(data3)
//______________________________Delete______________________________//
router.delete("delete", Int.parameter) { req -> Future<HTTPStatus> in
return try req.content.decode(MyData.self).map(to: HTTPStatus.self) { messageRequest in
let id = try req.parameters.next(Int.self)
for index in 0..<datas.count{
if (datas[index].id == id){
datas.remove(at: index)
return .ok
}
}
return .notFound
}
}