PHP网站怎么调用别家的API?

 我来答
猪八戒网
2023-04-03 · 百度认证:重庆猪八戒网络有限公司官方账号
猪八戒网
猪八戒网(zbj.com)创建于2006年,现已形成猪八戒网、天蓬网和线下八戒工场的“双平台+一社区”服务模式,是中国领先的人才共享平台。
向TA提问
展开全部

首先我们要知道的是,API有很多种表现形式,对于不同形式的API,调用方式也是不同的。

API常见模式

1、RPC(远程过程调用协议)

RPC是一种进程远程调用的方式,主要用于异构平台间的进程通信,是Client/Server模式。RPC可以使用多种协议(如:HTTP协议、自定义协议等)和序列化方式(如:JSON、XML、二进程),RPC是基于TCP或者自定义协议来实现的,性能较高,但耦合度也较高。

2、SOAP(简单对象访问协议)

SOAP其实是基于HTTP和XML的实现,基于HTTP协议。在耦合度、维护性、扩展性上比RPC要好,但是性能上会低于RPC,特别是XML这种消息传递的方式会影响性能。

虽说SOAP是基于HTTP的,但是SOAP提供了Session/Cookie机制来维持状态,所以一些需要状态的(如:调用某些API前需要进行认证)业务中还能看见SOAP的身影。

3、RESTful

RESTful其实是一种架构风格,它不是一种标准!RESTful可以理解为是Json+HTTP+POST/GET/PUT/DELETE的组合,同样是基于HTTP协议的。REST相比于SOAP和RPC,更加简洁明了。

RESTful的无状态特性使得其适合在分布式环境中使用,所以现在的API都推荐使用RESTful设计风格。

PHP中如何调用第三方提供的API?

上面讲到了,API有很多种模式,对于不同模式我们调用的方法就不同。下面介绍下PHP如何计用常见模式的API。

1、RPC

如果对方提供的API是RPC形式的,那一般都会提供PHP版本的Client给你,你按说明进行调用即可。

另外PHP生态中也有不少RPC框架,如:PHPRPC、Thrift、gRPC等。

2、SOAP

PHP5内置有php_soap扩展,此扩展实现了PHP对WebServices的支持。

3、RESTful

说白了RESTful就是HTTP协议,只不过使用了不同的HTTP动词进行请求区分,我们推荐使用cURL类库进行RESTfulAPI的请求。

不建议使用file_get_contents函数进行HTTP类型的API调用,很多人习惯使用此函数调用HTTPAPI,但是又不设置超时时间,当API不稳定时严重影响了网站速度。

广东轻亿云软件
2024-05-14 广告
广东轻亿云软件科技有限公司在软件开发领域深耕多年,积累了丰富的经验和技术实力。我们深知API接口在现代软件开发中的重要性,因此,我们与多家业界领先的API接口提供商保持着紧密的合作关系,确保我们的产品和服务能够充分利用这些接口,为用户提供更... 点击进入详情页
本回答由广东轻亿云软件提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式