数据如何从MVC传输到浏览器并再次返回?它是否使用微软自己的技术,如ASMX或WCF或完全不同的东西?
这听起来像MVC正在使用他们正在使用的ASMX Web服务,但我似乎无法找到任何给出真正答案的文档。
答案 0 :(得分:2)
来自MVC app的数据< - >浏览器只是简单的HTTP请求/响应数据。要查看此原始数据的内容,请在PC上安装Firebug或Fiddler,然后使用该数据向您显示原始数据和原始数据。这一切都很简单。
WebForms使用相同的请求/响应模型。浏览器将一些信息传递给网络服务器(即请求...就像..我想看{4}}),网络服务器回复一些html,json,xml,二进制数据(图像)等......这是回应。
所有浏览器都使用此请求/响应模型与所有网站通信。
现在..与MVC和WebForms的区别在于Web服务器如何处理请求以及它如何生成响应。所以他们都遵循相同的概念,只是以不同的方式处理它。例如,MVC使用控制器来确定向用户显示的内容,而WebForms有一个“页面”,用于确定要显示的数据(用于该页面)。
所以 - 从本质上讲 - 你为你的网站编程说:
答案 1 :(得分:1)
使用普通的HTTP请求/响应在页面中执行AJAX请求。也就是说,在javascript中,客户端将创建一个AJAX请求对象,将其发送到URL并返回一个字符串。如果该字符串是json,则可以对其进行评估并成为实时javascript对象。
MVC的理念是所有 http请求都通过控制器。 WCF仅适用于客户端不使用html-json-css-etc的其他类型的Web服务。
您可以使用System.Web.Mvc.Controller上的Json(对象模型)方法从控制器操作返回JSON。
例如
ActionResult MyAction() {
return Json(new { success=false, for_lunch="mmm, chicken"});
}
这将返回您的网页可以使用的json。 所以,这就留下了一个问题 - 浏览器如何为json调用MyAction?
这个主题有几个帖子,我发现的第一个帖子是this post。
希望有所帮助