我的网站有MVC结构。我尽量保持控制器的名称尽可能干净和连贯。但我想知道如何命名POST与GET控制器。例如,假设我有一个控制器负责显示管理面板中涉及编辑/创建图像的部分:
class AdminImageController extends Controller
{
}
虽然我有另一个控制器负责从管理面板的这一部分发布数据。例如发布新图像,发布已编辑的图像,以及处理本节请求的POST类型的任何内容:
class AdminImageController extends Controller
{
}
它们都具有相同的名称,因此会出错并退出脚本。我想要做的是如何命名它们,保持它们的一致性,连贯性和干净性,是否添加请求动词有用?还是常见的?
如:
AdminGetImageController()
对于POST:
AdminPostImageController()
我不想在这里讨论,我只需要知道行业中的标准(因为它没有经验),因为命名约定如果没有正确提供,则会提前出现问题。
答案 0 :(得分:2)
您的控制器通常会处理各种请求,无论他们是否使用GET
或POST
。您的控制器命名正确,但您的操作方法方法有点偏。
这是C#中的一个例子:
public class AdminImageController : Controller
{
[HttpGet] // only accepts GET requests
public ActionResult Image()
{
// do stuff...
return View();
}
[HttpPost] // only accepts POST requests
public ActionResult Image(HttpPostedFileBase data)
{
// do stuff...
// redirect back to the GET action
return RedirectToAction("Image");
}
}
[HttpGet]
and [HttpPost]
attributes内置于MVC中,可应用于单个操作或整个控制器。