yyy / aliyun_api_gateway
yyy's aliyun api gateway sdk
1.0.1
2024-10-17 03:32 UTC
Requires
- php: ^7.0 || ^8.0
This package is not auto-updated.
Last update: 2025-06-13 05:06:00 UTC
README
本项目代码主要根据阿里云官网提供的 demo 编写而成
- 阿里云官网 demo 不可以使用 composer,使用很不方便。
- 本项目的目的,在阿里云市场购买 api 接口后,不想使用不安全的 API 简单身份调用认证,想使用更安全的 API 签名调用认证,但苦于没有现成的 composer 库,本项目来提供解决方案。
- 签名调用的原理参见官网:https://help.aliyun.com/zh/api-gateway/traditional-api-gateway/user-guide/use-digest-authentication-to-call-an-api
- 最主要的代码在 Util/HttpUtil.php
- 排查错误,可以使用返回对象的 getContent() 等方法,会完整打印出所有返回信息含头信息。正常只需 getBody() 就可以得到接口的返回信息。
- 如想自己修改代码,无需改本类库,只需把类库根目录下的 ApiClient.php 取出拷贝到自己项目,然后随便改改就好用了。
- 本项目创建时间 2024-10-17
// 这是一个示例,展示了如何使用本sdk调用接口。 $appKey='20XXXXXX'; $appSecret='zVXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; $host='https://XXXXX.market.alicloudapi.com'; $path = "/XXX/XXX"; $help = \YYY\Aliyun\ApiGateWay\ApiClient::getInstance( $appKey, $appSecret ); // 只有post,get两个方法。 $response = $help->post( $host, $path,[ 'name'=>'XXXX', 'account'=>'1XXXXXXXXXXXXXXXXXXX', ] ); // 返回是字符串。 echo $response->getBody(); // 返回类似如下代码,特别注意,每个接口返回的字段都很不一样。不可以套用。 //{"data":{"count":1,"items":[{"Name":"XXX","Abc":"IC","province":""}]},"msg":"成功","success":true,"taskNo":"742436029166773500611327"}