可以在 Client 中设置 OpenAPI 的请求协议,请尽量使用 HTTPS。若不设置则用 OpenAPI 默认支持的协议类型(HTTPS):
// 配置协议类型为 HTTPS
$config = new Config([]);
$config->protocol = "HTTPS";
重要
使用 HTTPS 协议访问 OpenAPI 时,SDK 会默认开启校验 SSL/TLS 证书有效性,若您代码环境没有证书环境,则会报错证书校验失败。
为保障通信安全,建议您保持开启,若在测试环境必须忽略证书校验,可以通过运行时参数ignoreSSL
设置:
// 运行时参数超时设置,仅对使用了该运行时参数实例的请求有效
$runtimeOptions = new RuntimeOptions();
// true 忽略证书校验;false 设置证书校验
$runtimeOptions->ignoreSSL = true;
完整示例如下:
use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\Credentials\Credential;
use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
use AlibabaCloud\SDK\Ecs\V20140526\Ecs;
use AlibabaCloud\SDK\Ecs\V20140526\Ecs\Models\DescribeRegionsRequest;
// 使用默认凭证初始化 Credentials Client
$credential = new Credential([]);
$config = new Config([
'credential' => $credential
]);
// 配置协议类型为 HTTPS
$config->protocol = "HTTPS";
// 运行时参数超时设置,仅对使用了该运行时参数实例的请求有效
$runtimeOptions = new RuntimeOptions();
// true 忽略证书校验;false 设置证书校验
$runtimeOptions->ignoreSSL = true;
$request = new DescribeRegionsRequest();
$client = new Ecs($config);
$client->describeRegionsWithOptions($request, $runtimeOptions)