API хранилища объектов SoftLayer: результаты поиска неверны

Я попытался использовать хранилище объектов softlayer с api-клиентом.
SoftLayer-объект-хранения-PHP

Моя цель — поиск по имени файла и посмотреть, существует ли файл.

однобайтовое имя файла (например, a.jpg) правильный результат.
многобайтовое имя файла (日本語 .jpg) неверный результат.

Мой контейнер photo, нет подкаталога.

sjc01/photo/a.jpg
sjc01/photo/日本語.jpg
sjc01/photo/multibyte_filename.jpg
sjc01/photo/anytime with space.jpg
...

код ниже

<?php
include('/includes/lib/ObjectStorage/Util.php');
$tokenStore = ObjectStorage_TokenStore::factory('file', array('ttl' => 3600, 'path' => '/tmp/objectStorage'));
#give the write permission in /tmp/objectStorage
ObjectStorage::setTokenStore($tokenStore);

$host = 'https://sjc01.objectstorage.softlayer.net/auth/v1.0';
$username='SLXXXXXXXXXXX';
$password='XXXXXXXXXXXXX';
$options = array('adapter' => ObjectStorage_Http_Client::SOCKET, 'timeout' => 10);

$objectStorage = new ObjectStorage($host, $username, $password, $options);
$containerList = $objectStorage->with('photo')
->setContext('search')
->setFilter('type', 'object')
->setFilter('q.name', "multibytefilename.jpg")
->setMime('json')
->get();
var_dump($containerList);

Результат objectCount 100 неверен.
Я надеюсь, что objectCount 1.

конец части возвращаемого значения.

["context":protected]=>
string(6) "SEARCH"["containerCount":protected]=>
int(0)
["objectCount":protected]=>
int(100)

Мне нужен статус существует.
У кого-нибудь есть идея или правильный метод?
Спасибо.

0

Решение

Я думаю, что ваш запрос возвращает все объекты .jpg. Попробуй это:

$containerList = $objectStorage->with('test')
->setContext('search')
->setFilter('type', 'object')
->setFilter('q.name', "a.jpg")
->setMime('json')
->get();
var_dump($containerList);

Если я не ошибаюсь, нужно указать свойство для поиска (в данном случае имя)

здесь больше информации о полях, которые вы можете использовать при поиске запроса. http://sldn.softlayer.com/article/API-Operations-Search-Services

Я надеюсь, что это поможет вам.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]