为什么我们需要API接口?它的核心是什么

API接口是什么;为什么我们需要API接口:背景,核心需求,举个例子;API接口的核心:从哪里看,怎么看,看什么是摆在面前的问题;成功;失败

为什么我们需要API接口?它的核心是什么

对于很多产品小白或求职者而言,API接口是一个产品和研发领域的专业术语,大家可能在文章或者PRD中都已经有接触过API接口的概念。

实际上,接口的应用已经非常广泛和成熟,这个概念主要活跃在公司内部的各系统之间的衔接和对接以及公司间合作的场景。如果你可以认真看完这篇文章,我相信你们对API接口的认识会更深入,甚至超过90%的小白和求职者。

本文目录:

API接口是什么?

为什么我们需要API接口?

API接口的核心

一、API接口是什么?

我们来以一个常见的数学公式理解API,比如y=x+2,当x=2的时候,y=4,对么?

那此时,我们把y=x+2称为接口,x=2称为参数,y=4称为返回结果,那这个接口的功能就是能把我们输入的数加上2(注意:这里你可以发现接口自身是带有逻辑的)。

类比地,我们来理解一个常见的场景,比如现在有一个可以把经纬度转化为城市的接口,那当我输入经度是55°,纬度是88°的时候,接口通过自己的逻辑运算,返回结果告诉我:杭州市。

这样你就可以清晰地了解百度百科的官方解释了,接口就是预先定义的函数逻辑,他是供其他系统请求,然后返回结果的一个东西。

二、为什么我们需要API接口?

背景:我们的业务系统涉及多方多面,如果要一个公司或者一个系统把所有业务都做完,那未免工作量太大了吧?并且如果其他系统或公司有更好的运算逻辑,那我们在设计功能的时候可以考虑利用接口进行开发。

核心需求:利用现有接口可以降低开发成本,缩短开发成本。

举个例子:比如我是打车的APP,现在我需要在我的页面上展现地

<appid>wx2421b1c4370ec43b</appid>(我的应用ID是wx2421…….)

<mch_id>10000100</mch_id>(我的商户号是10000…….)

好了,现在微信知道你是谁了,那你要告诉微信,你需要微信支付帮你收多少钱对吧?这里定义了货币类型和总金额,也就是收什么货币,收多少钱。

这里你看,货币类型的必填写了否,也就是说你也可以不告诉微信支付货币类型是什么,因为他在后面备注了默认是人民币。

好的,那我们写下两段报文

<free_type>cny</ free_type >(我要收人民币)

<total_fee>1</total_fee>(我要收1元)

好了,现在微信知道你是谁,也知道要收多少钱了,那接下来微信支付要把收钱结果告诉你呀,因为你得知道用户是成功支付了才能继续发货,服务啊等等的。所以这里我们用到通知地址,就是告诉微信,等下完事了他去哪里告诉你支付结果。那我们把地址写好:

<notify_url>http://wxpay.wxutil.com/pub_v2/pay/notify.v2.php</notify_url>

3. 返回结果

刚刚微信支付已经去收款了,现在他要在我们留下的通知地址中,告诉我们结果了。结果无非是两种:成功收款?收款不成功?

(1)成功

很顺利,现在用户成功付钱了,并且微信也把成功的消息告诉我们了,并且他还把用户支付的一些信息也告诉我们。

那这里就是微信支付成功收款后告诉我们的信息。

应用APPID,商户号:告诉你我成功扣款的是哪家商户的哪个APPID的交易。

业务结果:成功或失败

(2)失败

在产品设计的时候,我们往往很关注失败的情况,当收款失败的时候,微信同时会告诉你失败的原因,如下图很好理解,失败的原因有很多很多种,我们在设计的时候往往要分析每种失败的原因,为每个失败的原因设计页面和用户提示,以确保用户能理解。

以上就是API接口基本运作模式的理解,下面我将继续更新API接口的一些更为深入和细节的关键元素,如请求方式/签名/加解密等等。

本文来自投稿,不代表【】观点,发布者:【

本文地址: ,如若转载,请注明出处!

举报投诉邮箱:253000106@qq.com

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2024年4月26日 06:51:05
下一篇 2024年4月26日 06:53:06

相关推荐

  • java判断是否实现接口,判断类是否实现某接口

    java判断对象是否实现接口会报错 字符串变量未初始化;接口类型的对象没有用具体的类初始化,比如:List lt;会报错 List lt = new ArrayList();则不会报错了 当一个对象的值为空时,没有判断为空的情况。 Class中有个方法 public native boolean isAssignableFrom(Class? cls)用来判…

    2024年5月17日
    3300
  • 微信高级群发接口java,微信群开发接口

    java怎么实现群发短信的功能 1、第根据http://1322106:80/CompanySendSmInf/services/SmsInf?wsdl 拿到WSDL文件。第根据Axis的jar包,把WSDL文件生成客服端java代码。(可以把java文件打成jar文件,便于管理。 2、Java实现短信自动发送功能主要是用httpclient实现的,要有发短…

    2024年5月16日
    2800
  • java开发app接口,java接口开发是什么意思

    用java开发app后台用什么框架 来自Facebook — React Native是一种开源框架,从Facebook的React Java框架派生而来,众所周知,Java框架取代了早些时候的HTML5基础。 Struts是一个基于Sun Java EE平台的MVC框架;Spring是轻量级的Java EE应用程序框架;Hibernate是一个开放源代码的…

    2024年5月16日
    3300
  • javaconsumer接口,java接口comparable

    怎么为自己的网站编写api接口 在设计之初就需要将API详细功能整理出来,按业务功能点或模块来划分,明确此API需要提供哪些功能。 熟悉API接口开发,这里包括你自行开发API的能力以及调用第三方API的经验。熟悉TCP/IP,socket等网络协议和相关知识。熟练掌握App发布的流程,真机调试技巧,证书,打包,上架。 php实现api接口的方法:首先安装好…

    2024年5月16日
    3400
  • javamailjar包下载,javamail api

    求Java程序打包成可执行jar的工具或者方法 安全性。可以对JAR文件内容加上数字化签名。这样,能够识别签名的工具就可以有选择地为您授予软件安全特权,这是其他文件做不到的,它还可以检测代码是否被篡改过。减少下载时间。 要将项目打包成jar文件,方法很多,可以用Eclipse自带的打包工具Ant打包,也可以用Eclipse的Export生成jar。经过尝试后…

    2024年5月16日
    3500
  • linux修改核心参数,linux内核代码

    linux性能调优都有哪几种方法? 登录系统。禁止SSH远程。时间同步。配置yum更新源。关闭selinux及iptables。调整文件描述符数量。定时自动清理/var/spool/clientmquene/目录垃圾文件。精简开机启动服务。 服务优化:你可以考虑优化系统中运行的服务,例如数据库服务器或 web 服务器,来提高性能。硬件优化:你可以考虑升级硬件…

    2024年5月16日
    4000
  • java匿名对象的使用,java实现匿名接口

    java中匿名对象是什么东西?怎样理解匿名对象?什么时候用? 匿名对象使用方法一:当对对象的方法只调用一次时,可以用匿名对象来完成,这样写比较简化。如果对一个对象进行多个成员的调用,就必须给这个对象起个名字。匿名对象使用方法二:可以将匿名对象作为实际参数进行传递。 方法2中new A()就是一个匿名对象,他没有名字。这样可以理解了吧。 匿名类与其他类的不同就…

    2024年5月16日
    3200
  • rjava环境,环境api

    Linux环境下,java怎么调用R语言 Java调用R,就是使用JRI.jar中的Api,执行一条R语言命令,当然首先你要了解R语言的语法。\x0d\x0aJRI中主要的API\x0d\x0aRengine R引擎,通过它进行R语言的启动、运算、画图、关闭等功能。 我有点不太理解是什么意思……Linux系统都有对应的R软件版本,可以从R的官网下载,安装了之…

    2024年5月16日
    3000
  • java接口调用失败,java调用接口异常重试

    Java调用webservice接口,一台客户端成功,一台客户端失败? 1、客户端调用方式错误:检查客户端调用webservice服务的方式是否正确,如SOAP或REST等。服务端配置错误:检查webservice服务端的配置是否正确,如端口、地址、URL等。 2、一般来说这是个不可恢复的错误,也就是说你重试多少次都是这个错误。 3、导致逻辑报错。还有一种就…

    2024年5月16日
    3100
  • linux软件包版本冲突,不是Linux核心软件包

    CentOS7下的软件安装方法及策略详解 centos7如何下载软件步骤如下:使用yum命令下载和安装软件:yum是CentOS7中的包管理器,可以方便地下载和安装各种软件包。使用yum命令需要先配置好yum源,然后使用以下命令下载和安装软件。 产品型号:ThinkpadE15系统版本:centos7Centos7操作系统安装步骤:双击启动vmware15创…

    2024年5月15日
    3100

发表回复

登录后才能评论



关注微信