更新时间:2025-11-13 GMT+08:00
创建并配置OBS客户端
操作场景
本章节指导客户创建并配置客户端,该任务是使用SDK与OBS交互的必备前置任务
配置参数
|
参数 |
描述 |
建议值 |
|---|---|---|
|
key |
访问密钥中的AK。 |
N/A |
|
secret |
访问密钥中的SK。 |
N/A |
|
endpoint |
连接OBS的服务地址。包含协议类型、域名(或IP)、端口号。示例:https://your-endpoint:443。(出于安全性考虑,建议使用https协议) |
N/A |
|
ssl_verify |
验证服务端证书参数。可能的取值:
默认为false。 |
N/A |
|
max_retry_count |
HTTP/HTTPS连接异常时的请求重试次数。默认为3次。 |
[1,5] |
|
socket_timeout |
Socket层传输数据的超时时间(单位:秒)。默认为60秒。 |
[10, 60] |
|
connect_timeout |
建立HTTP/HTTPS连接的超时时间(单位:秒)。默认为60秒。 |
[10, 60] |
|
chunk_size |
读socket流时的块大小(单位:字节)。默认为65536字节。 |
默认 |
|
is_cname |
是否通过自定义域名访问OBS服务。默认为false。
说明:
为了保护您的业务不受华为云公共域名被相关机构接管的影响,建议优先选择自定义域名。 |
N/A |
- 建议值为N/A的表示需要根据实际情况进行设置。
- 如网络状况不佳,建议增大socket_timeout和connect_timeout的值。
- 如果设置的endpoint不带协议类型,则默认使用HTTPS协议。
通过构造函数创建
// 声明命名空间
use Obs\ObsClient;
// 创建ObsClient实例
$obsClient = new ObsClient([
//推荐通过环境变量获取AKSK,这里也可以使用其他外部引入方式传入,如果使用硬编码可能会存在泄露风险。
//您可以登录访问管理控制台获取访问密钥AK/SK,获取方式请参见https://support.huaweicloud.com/intl/zh-cn/usermanual-ca/ca_01_0003.html
'key' => getenv('ACCESS_KEY_ID'),
'secret' => getenv('SECRET_ACCESS_KEY'),
// 【可选】如果使用临时AK/SK和SecurityToken访问OBS,同样建议您尽量避免使用硬编码,以降低信息泄露风险。您可以通过环境变量获取访问密钥AK/SK,也可以使用其他外部引入方式传入。
// 'security_token' => getenv('SECURITY_TOKEN'),
'endpoint' => 'https://your-endpoint',
]);
// 使用访问OBS
// 关闭obsClient
$obsClient -> close();
通过工厂方法创建
// 声明命名空间
use Obs\ObsClient;
// 创建ObsClient实例
$obsClient = ObsClient::factory ( [
//推荐通过环境变量获取AKSK,这里也可以使用其他外部引入方式传入,如果使用硬编码可能会存在泄露风险。
//您可以登录访问管理控制台获取访问密钥AK/SK,获取方式请参见https://support.huaweicloud.com/intl/zh-cn/usermanual-ca/ca_01_0003.html
'key' => getenv('ACCESS_KEY_ID'),
'secret' => getenv('SECRET_ACCESS_KEY'),
// 【可选】如果使用临时AK/SK和SecurityToken访问OBS,同样建议您尽量避免使用硬编码,以降低信息泄露风险。您可以通过环境变量获取访问密钥AK/SK,也可以使用其他外部引入方式传入。
// 'security_token' => getenv('SECURITY_TOKEN'),
'endpoint' => 'https://your-endpoint',
]);
// 使用访问OBS
// 关闭obsClient
$obsClient -> close();
- 您的工程中可以有多个ObsClient,也可以只有一个ObsClient。
- ObsClient在调用ObsClient -> close方法关闭后不能再次使用。
父主题: 初始化