使用MVC v / s $ .ajax,$.ajax
或$http
使用XMLHTTPRequest
向服务器发送请求的POST之间有什么区别?但ASP.NET MVC使用什么机制
具体是什么区别
@using( Html.BeginForm("LoginMethod", "Login", FormMethod.Post) {
// form here
}
和
$.ajax({
url: '....',
type: 'post',
});
我组织的一名高级成员表示,我们不应在银行应用程序中使用$.ajax
。那么MVC POST是否更安全?
因此下面的问题
- MVC POST v / s $ .ajax post
之间有什么区别- 为什么/如何/真的是MVC POST更安全吗?
- 为什么我无法在DevTools的网络选项卡中看到MVC POST的详细信息
醇>
答案 0 :(得分:6)
哇。没有冒犯,但你需要退后一步,熟悉你正在努力开发的平台:互联网。阅读TCP / IP和HTTP协议等内容。另请参阅REST。它实际上是一种并行的哲学,它不仅可以应用于HTTP上的交互,而且它几乎可以编纂HTTP的工作方式以及如何设计Web应用程序。
那就是说,我会尝试回答你提出的三个问题:
- MVC POST v / s $ .ajax post
之间有什么区别 醇>
我必须真正解构这一点,因为你对游戏术语的理解很困惑。首先,POST是POST是POST。没有不同的种类。 POST是一个HTTP动词,就像GET一样。它携带一个称为请求 body 的有效负载,而GET没有正文。标准HTML表单POST和AJAX POST之间的区别($.ajax
是一个jQuery函数,与此处没有任何关系),都在客户端或Web浏览器中。使用传统帖子,整个选项卡或窗口上下文将更改为新页面,而AJAX请求可以被视为由所谓的瘦客户端创建。它是一个JavaScript对象XMLHttpRequest
,它在浏览器中充当了一种迷你浏览器。它会像浏览器一样发出请求并接收响应,但处于较低级别。它不会自动呈现HTML,加载相关资源等。它只会返回响应,然后由您和您的应用程序根据该响应执行某些。
- 为什么/如何/真的是MVC POST更安全吗?
醇>
不知道那是从哪里来的,但事实并非如此。就像我上面说的那样,POST是一个POST就是POST。而且就其而言,没有POST是“安全的”。在HTTP协议中,所有数据都以纯文本形式通过网络传输,并且可以由源和目标之间的任何中间服务器或代理查看。 HTTPS或HTTP 安全是将一层安全性添加到HTTP的方式。 HTTPS连接需要SSL(安全套接字层)证书。所有这些都是由CA(证书颁发机构)认证属于特定域和组织的公钥。建立HTTPS连接后,客户端和服务器将启动握手,它们基本上交换公钥。客户端使用服务器的公钥来加密请求标头和正文,然后发送请求。公钥仅适用于加密。要解密,您需要一个私钥,只有服务器才有。服务器解密请求,创建响应,使用客户端的公钥对其进行加密,然后将其发送到客户端。同样,客户端使用其私钥来解密响应,然后呈现网页或其他任何内容。
- 为什么我无法在DevTools的网络选项卡中看到MVC POST的详细信息
醇>
同样,我将“MVC POST”称为传统的HTML表单POST。 MVC真的与它无关。您无法在浏览器的开发控制台的网络选项卡中看到详细信息,因为开发控制台是页面特定的,如上所述,传统的HTML表单POST会导致浏览器选项卡或窗口的视图完全改变。网络选项卡记录网页流量生成页面:加载JS,CSS,图像等,并发出AJAX请求。
答案 1 :(得分:1)
这是关于所有ajax帖子还是特定网络API帖子的问题?
最后