Достигая предела скорости
В настоящее время я работаю над интеграцией между Podio и другим API, и я наткнулся на следующую ситуацию:
В настоящее время мне нужно найти информацию из ссылки в одном рабочем пространстве в приложении, содержащем информацию о счетах, а затем найти конкретного клиента в другом рабочем пространстве в приложении, содержащем эту информацию.
Раньше я был в состоянии просто аутентифицировать себя более чем с одним приложением за раз, а затем динамически получать информацию из ссылок на другие приложения. Но сейчас я должен следовать следующему потоку кода, чтобы не получать исключения:
- Я должен сначала аутентифицироваться с приложением Invoices
- Извлеките объекты, которые мне нужны
- Просматривайте элементы по одному, каждый раз проходя аутентификацию в приложении Customer, чтобы я мог получить их информацию, а затем снова проходил аутентификацию в приложении Invoice.
Это означает массу запросов к Подио, которые мне не нужны.
$authenticateCustomers = Podio::authenticate_with_app(*, '*');
$customer = PodioItem::get($itemId);
$name = $customer->fields['companies']->values;
$authenticateSales = Podio::authenticate_with_app(*, '*');
До приведенного выше фрагмента я уже проверил их в своем конструкторе.
Если я удаляю аутентификации, я получаю исключения из-за отсутствия аутентификации.
Совет? Заранее спасибо.
1 ответ
Почему бы не использовать аутентификацию по имени пользователя / паролю?
Таким образом, вам нужно только пройти аутентификацию один раз, и у вас будет доступ ко всем пространствам / приложениям, в которых вы находитесь. Это больше подходит для динамических рабочих процессов такого типа в приложениях.
//Authenticate podio with $username and $password.
Podio::authenticate_with_password($username, $password);
//Get first item
$firstItem = PodioItem::get($itemId);
//Get second item
$secondItem = PodioItem::get($secondItemId);