1

是否有人尝试使用php-opencloud库连接到 softlayer 对象存储?

当图书馆尝试进行身份验证时,我收到了 400 个错误响应。

从我在 php-opencloud 库中看到的内容来看,它使用此处描述的身份验证方法,它使用 v2/token 和使用 v1 的 softlayer 对象存储。

基于同一个openstack的softlayer对象存储不支持认证v2吗?

我可以使用他们提供的 sdk(softlayer-object-storage-php) 连接到对象存储,它似乎使用身份验证 v1,问题是我使用的是 laravel 5.1,它具有使用 flysystem 的内置文件系统(thephpleague/flysystem ) 具有使用 php-ocencloud 的 openstack 适配器。

这将非常好,并且会节省我只使用驱动程序的时间,而不是我必须使用 softlayer sdk 构建自定义驱动程序并让我重新发明轮子。

我在 config/filesystems.php 中的配置

'rackspace' => [
        'driver'    => 'rackspace',
        'username'  => '***username from softlayer***',
        'key'       => '***api key from softlayer**',
        'container' => '***my test container***',
        'endpoint'  => 'https://sng01.objectstorage.softlayer.net/auth/v1',
        'region'    => 'sng01',
        'url_type'  => 'publicURL',
    ],

我尝试像这样连接:

Storage::disk('rackspace')->exists('test');

错误是:

ClientErrorResponseException in BadResponseException.php line 43:
    Client error response
    [status code] 400
    [reason phrase] Bad Request
    [url] https://sng01.objectstorage.softlayer.net/auth/v1/tokens
4

1 回答 1

0

当前的 softlayer 仅具有用于身份验证 v1 的端点,您可以在门户中看到有效的端点(单击查看凭据http://knowledgelayer.softlayer.com/procedure/how-do-i-access-object-storage-command-line) .

问候

于 2015-12-07T14:36:12.920 回答