成为您自己的假 JSON API 的大师(或学习功夫!)
成为您自己的假 JSON API 的大师(或学习功夫!)
你认为你可以在几秒钟内学会任何东西吗?
显然,有些可以。如果你想知道我指的是谁,那么偷看一下怎么样 这令人兴奋的场景 来自大片《黑客帝国》?
也许,我们将来会有那种尖端技术,就像主角'Neo'一样, **** 我们将能够将无数技能下载到我们的大脑中,因此,我们的物种将进化成一个完全不同的存在。
这样,我们可以通过我们思想的潜在力量做任何事情,正如著名的未来学家和物理学家 Michio Kaku 在他的书中所暗示的那样 心灵的未来 .他认为权力暂时处于休眠状态,但它肯定存在。
我们要学什么?
好吧,我不想让你失望。不幸的是,我们还没有那种技术。不过不用担心。这篇文章(或那个场景的选择)并不是说‘嘿,伙计们,坚持住!总有一天,你会轻松学会一切。”
为了能够解释我的目的,我只想提请您注意该特定场景中的中心人物之间的以下对话。让我们仔细研究一下。
墨菲斯: 我怎么打你的?
尼奥: 你太快了。
墨菲斯: 你比这更快。不要以为你是。知道你是!别再想打我了,打我!”
今天,我们将学习(触及)一个新的可怕概念,称为 API,也就是“应用程序编程接口”,并停止假设它很困难。
API 的恶魔般的微笑
老实说,当我刚开始学习编程时,这个缩写词成了我的噩梦。就像魔鬼在取笑我一样。我知道我必须尽快掌握这个概
随着时间的推移,我能够接受这个概念并决定学习 API 的来龙去脉。我是怎么走到那一步的?
我想我只是听了墨菲斯的建议,不再将其视为我的死对头,而是决定采取行动。然后,一切都变了。
我真诚地认为,这一定是学习艰难事物时的态度。我们需要一劳永逸地停止在我们的脑海中妖魔化事物。
也许,那些事情并没有那么可怕,只是我们的大脑在欺骗我们,让问题变得比想象的要大。
如果我们能做到这一点,我们可以体验非凡的时刻,比如 这个 立刻。好吧,我可能有点夸张,但你明白了。
你不需要接住空中的子弹。但是,您可以摆脱阻碍您采取解决方案的心理障碍。
什么是 API,它们为何重要?
让我们首先提出一个 API 的基本定义。首字母缩略词“API”代表应用程序编程接口。
但这并没有说太多,不是吗?让我这样说吧。它是一种软件协商器(中介),可帮助两个应用程序相互通信。
API 示例
与其提供无聊的解释,不如让我们把它放在一个上下文中,然后想出一个故事。
假设你是 80 年代,没有互联网。听起来像噩梦,不是吗?但是,曾经有一段时间我们必须亲自处理所有事情。
无论如何,你想在我们想象的场景中去马尔代夫度假。要做到这一点,你需要去旅行社提前预订所有东西,因为你不能简单地出现在一家高档酒店并说,'嘿,我在这里!给我一个房间。好吧,你最终可能会得到一个房间,但质量和舒适度可能无法保证。
旅行社通过与马尔代夫的酒店取得联系并确保流程的顺利进行,帮助您完成预订。嗯,它有点像你的 API。
最后,你的中介在得到对方的同意后给你预订文件。请记住,80 年代没有互联网。因此,如果没有旅行社,您将无法自己处理所有这些事情。谢天谢地,我们当时有旅行社,现在有 API!
今天的情景
问题是我们现在有各种各样的在线代理,他们当然在处理真正的 API。
假设你很贪婪,但太累了,不能去快餐店。因此,您决定一键从互联网上点餐,然后在家中舒适地等待美味的汉堡菜单出现在您的屏幕上。
这是您下订单时另一边发生的事情。您使用的应用程序代表您与餐厅的 API 取得联系,并检查数据库以查看是否有足够的库存以及是否有送
什么是休息 API?
这些年来,API 也在不断发展。毕竟,这些都是软件产品,应该首先受到尖端技术改进的影响。
像 REST 这样的现代 API 对开发人员来说是无负担的,因为它们可以轻松访问。这些新版本的 API 是根据其受众的需求进行标准化和定制的。
长话短说,对于开发人员来说,无论类型如何,在当今世界都无法想象没有 API 的生活。这就是为什么它们对编程社区来说很重要。
为什么我们需要 Mock API?
好问题!让我们深入了解它。开发人员必须检查流程并测试他们的产品,以查看所有部分是否协调一致。
要测试此类功能,您必须遵循某些步骤,并且 API 的最终版本的实现可能需要一些时间。同时我们要做什么?坐等?这听起来不是一个好主意。简而言之,我们不能等待实际的 API 立即发挥作用。他们可能还没有准备好。
在相关 API 准备好使用之前,我们需要一个方法来模拟真实的 API。因此,模拟 API 为我们提供了一个很好的机会来见证几乎与其真实版本一样的功能响应。
简而言之,模拟 API 将在发布最终产品之前让您了解可能的场景。多亏了他们,您可以修复有问题的部分,甚至可以开发更好的 API 以获得可靠的用户体验。
模拟 API 是如何工作的?
当您使用模拟 API 时,模拟服务器可确保平稳过渡过程。因此,模拟端点可以奇迹般地工作。您无需在此过程中进行太多后端流程即可生成它们。
存在多少个 Mock API?
嗯,有 太多的模拟 API 这对于新开发人员来说可能有点吓人。 Jest 和 Postman 是您可能经常听到的两个流行的。
不过,它们的功能或多或少相似。只要他们完成这项工作,其余的就不是那么重要了,以我的拙见。
什么是 Mockapi.io ?
这就是我们将通过这篇文章详细研究的内容。当你学会了这个,我相信你可以很容易地应付其他的,因为它们本质上都是相似的。
Mockapi.io 为我们建立了一个可靠的 API 基础设施,以便我们可以通过给定的端点创建我们的模型。这些帮助我们在真实项目中测试实际 API 的存在。
它是免费的吗?
通过 Mockapi.io ,您可以免费生成一个项目。换句话说,它是部分免费的。但它非常用户友好,因此您最终也可能会注册付费版本。
如何设置项目
这确实是小菜一碟。与所有其他平台一样,它从注册过程开始。完成此操作后,您将看到一个空白屏幕,您可以通过该屏幕生成一个新项目。
一旦您单击“+”号,系统就会要求您命名您的项目。如果有合作者,您还可以输入合作者的姓名或电子邮件。如果没有,只需跳过该部分。
出于测试目的,让我们将此项目称为“示例”,并使用“api”一词作为前缀。只需单击“创建”即可完成该过程。常规端点地址如下:
但是,这不是您将要使用的。如果您访问项目部分,您会看到一个长长的网址,如下所示:
挂在那里。我们还没有完成。
确定端点
假设我们正在设计一个关于忍者的基本游戏。可以猜到,项目的实际 API 还没有准备好。我们应该等到它出现吗?或者做点什么?
作为游戏的开发者,您可能对我们忍者的基本功能有所了解。要使用模拟 API 测试我们的应用程序,我们需要一些端点。
我们的游戏需要什么?
端点帮助我们形成一个新的忍者,列出所有忍者战士,获取有关他们的信息,在需要时从列表中删除一个或多个战士。让我们看看所有这些东西。
首先,点击新资源按钮。现在,我们需要为端点命名。请记住,“示例”一词只是项目的名称。这个有不同的目的。 'ninjas' 作为资源部分的名称怎么样?
这意味着我们将发出的所有请求都将发送到以下地址。在某种程度上,这个资源名称代表端点,它将帮助我们检索一些模拟数据。
https://5cb4a738bbf7b50014cabbfd.mockapi.io/api/ninjas
请求类型
确定资源/端点的名称后,系统会自动列出请求类型。只需单击请求类型(GET、POST、DELETE、PUT)旁边的按钮即可根据您在自己项目中的需要打开或关闭它们。
谢梅建设
现在让我们向下滚动一点,仔细看看这个方案。这是我们决定某些属性/模拟数据细节的地方。
在我们的忍者武士游戏中,我们将使用以下属性: ID、名称、图像、来源、颜色、IsHighlyExperienced .
你看到下面的第一列了吗?它是为此目的而设计的。 'id' 属性尤其重要,因为当我们在项目中进行测试时,我们将能够通过他们的 ID 删除战士或执行类似的操作。
第二列是您需要选择的地方 Faker.js 选项。通过这种设置,系统将尽可能真实地形成数据。
最后一列是数据的类型。它将是一个布尔值(是/否模型),还是一个数字?例如,如果您需要假图像并选择“ 头像 ' 在最后一列,那么系统会给你分配一张模拟图片。那是多么的棒!
还有一个对象模板部分,它将向您展示一个示例 JSON 方案。
忍者大军
一旦你完成了资源部分,你几乎可以开始了。这意味着您可以处理最后的润色。
现在,您可以在屏幕上看到您的项目。在标题“Ninjas”的正下方,您会看到一个范围字段,您可以在其中决定模拟项目的数量。在我们的例子中,这是忍者的数量。假设我们迫切需要 10 名强壮的战士。
我们应该让那些忍者成为我们自己的吗?
要更改模拟值中的某些部分,只需单击“数据”按钮。这样,您可以按照自己的方式修改它们。
例如,我想要一个用红色表示的日本忍者。我知道我知道这是该行业的一种不寻常的颜色。但如果你碰巧读到 我之前的文章 ,你会看到记忆宫殿法又在起作用了。所以细节越怪异,从长远来看就越容易记住上下文。
我也想要一个牙买加忍者战士。谁说忍者只适合日本人?我也可以有一个名叫“汉斯”的德国忍者,颜色是“兰花”吗?为什么不?好吧,在我们的替代宇宙中,所有规则都是可弯曲的,所以去疯狂吧!
开个玩笑,在本节中我只是在玩弄我的模拟数据。您当然不需要更改数据,但如果您是初学者并且有时间,拥有自己独特的项目/字符而不是使用一些预定义的 JSON 数据会很有趣。
一个小提示
单击更新按钮后,现在让我们看一下模拟数据的最终版本。将鼠标悬停在标题(忍者)上,右键单击并复制链接。
这就是获取模拟数据地址的方法。但是,在屏幕上复制提供的地址时,请跳过“端点”一词。否则,它将无法正常工作。
包起来
在没有实际 API 的情况下,模拟 API 可以成为开发人员的救星。在项目开始时,真实数据可能还没有准备好使用。因此,通过创建一些模拟数据来获得帮助是个好主意。
通过他们有用的存在,程序员不必等到真正的 API 到达并且后端可用时才测试其产品的功能。
相反,他们可以将模拟版本用于相同目的。在这篇文章中,我与您分享了其中一个模拟 API。尽管有 好多其它的 在市场上, 模拟API.io 就我而言,它非常易于使用。
如果您有兴趣深入研究并通过编写一些后端代码来生成您的模拟 API,我建议您观看 Ania Kubow 的 YouTube 教程 关于这个主题。像往常一样,她把所有的事情都解释得如此清楚,以至于你没有学不来的方法。搏一搏。你不会后悔的。
请记住,如果在那个特定场景中像 Morpheus 挑战 Neo 那样挑战你,这根本不是一件坏事。这是为了帮助你创造最好的自己。
现在,您可以从挑战待办事项列表中划掉“Learning Mock APIs”,然后向宇宙大喊:“那么,下一步是什么?”
快乐编码!
“知识就是力量。” - 法式培根
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明