django中的api和REST api之间存在差异

时间:2017-02-17 17:39:27

标签: python django

我对术语API和REST API感到非常困惑。它们之间有什么区别。 我是Django开发人员,必须同时处理这两个问题,但我不知道它们之间的区别。 还有一个问题:SOAP API和API是一回事吗?

2 个答案:

答案 0 :(得分:0)

从广义上讲,SOAP和REST是特殊类型的API。要了解其中的差异,请查看其他帖子。

SOAP vs REST (differences)

答案 1 :(得分:0)

"标准" API

API 是"正常"应用程序编程接口,例如类库,或包含可用于使开发更容易的方法的文件。

实施例:   - .Net框架   - Java框架

RESTful API

REST API (又名RESTful API)也是一个应用程序编程接口,但两者之间的主要区别是REST API是通过HTTP(s)协议调用的,并使用不同的URL (路由)和不同的HTTP方法,用于执行不同的操作,从后端应用程序获取,发送和/或删除数据。

我将在下面举几个例子:

  

HTTP GET

GET方法(浏览器用来打开和显示网页的方法)用于从服务器或后端应用程序(如网页)获取数据。 (例如:http://stackoverflow.com

正如您在URL中看到的那样,数据通过URL可见地传递给最终用户。

使用GET 认为传输用户数据是安全的!

  

HTTP POST

Web表单使用POST方法将数据发送到服务器而不显示它。 例如:您将用户的登录详细信息发送到服务器进行确认。您不希望此信息(轻松)可见,因此您可以通过POST发送它。

  

HTTP PUT

PUT方法用于将数据发送到服务器以进行存储。 比如说,例如,新用户在您的网站上注册了一个帐户,您可以使用PUT将数据发送到管理数据库的脚本。

  

HTTP DELETE

默认情况下,此方法处于启用状态! 顾名思义,DELETE方法用于从服务器删除数据。 例如:用户已向您的服务器发送删除其帐户的请求。 使用DELETE方法可能会发生这种情况。

注意:这些都是非常含糊的描述。这些并没有规定你必须使用每种方法。另外,我只介绍了基础知识。 那里有更多的HTTP方法。

有关可用方法的详细信息,请查看以下链接:https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html

我希望这能让你了解两者之间的差异。