API与API库/包装器之间的区别

时间:2015-09-01 01:57:56

标签: python api rest

我有点困惑。所以我理解如果我们想要从API中获取数据,我们可以用我们正在使用的任何语言调用该API URL(例如在python中,我们可以执行urllib.open(api的url)然后加载json)。我的问题是,如果我们可以用任何语言打开网址,那么开发人员通常在网站上拥有的API库是什么(python,java,c#,ruby等的库包装器)。我们是否需要使用特定的库来调用该特定语言的API?我们不能只用任何语言打开API网址吗?如果我们能够在每种语言中提取API,那么在每种语言中使用库有什么意义呢?

1 个答案:

答案 0 :(得分:1)

您不需要为客户端提供库。但是,开发人员倾向于喜欢库,因为它有助于创建授权标头,创建参数化URL以及将响应主体转换为本机类型。

然而,构建这些类型库有好/坏方法。许多库隐藏了HTTP API并引入了一系列新的问题,这些问题最初是为了避免HTTP接口而设计的。