Saya mulai menggunakan proyek API Web MVC4, saya punya controller dengan banyak HttpPostmetode. Controller terlihat seperti berikut:
Pengendali
public class VTRoutingController : ApiController
{
[HttpPost]
public MyResult Route(MyRequestTemplate routingRequestTemplate)
{
return null;
}
[HttpPost]
public MyResult TSPRoute(MyRequestTemplate routingRequestTemplate)
{
return null;
}
}
Di sini MyRequestTemplatemewakili kelas templat yang bertanggung jawab untuk menangani Json yang datang melalui permintaan.
Kesalahan:
Ketika saya membuat permintaan menggunakan Fiddler untuk http://localhost:52370/api/VTRouting/TSPRouteatau http://localhost:52370/api/VTRouting/Route saya mendapatkan kesalahan:
Beberapa tindakan ditemukan yang sesuai dengan permintaan
Jika saya menghapus salah satu metode di atas berfungsi dengan baik.
Global.asax
Saya telah mencoba memodifikasi tabel routing default global.asax, tetapi saya masih mendapatkan kesalahan, saya pikir saya memiliki masalah dalam mendefinisikan rute di global.asax. Inilah yang saya lakukan di global.asax.
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapHttpRoute(
name: "MyTSPRoute",
routeTemplate: "api/VTRouting/TSPRoute",
defaults: new { }
);
routes.MapHttpRoute(
name: "MyRoute",
routeTemplate: "api/VTRouting/Route",
defaults: new { action="Route" }
);
}
Saya membuat permintaan di Fiddler menggunakan POST, melewati json di RequestBody for MyRequestTemplate.