Microsoft Graph — це потужний інструмент, що надає розробникам можливість доступу та використання даних з різних послуг Microsoft, зокрема Office 365, Windows та платформ безпеки.
Laravel Microsoft Graph, створений розробником Девідом Карром, є пакетом, який забезпечує безшовну інтеграцію з REST API Microsoft Graph, спрощуючи взаємодію розробників із деякими хмарними сервісами Microsoft.
На даний момент доступні такі функції:
Спочатку встановіть пакет через Composer:
composer require dcblogdev/laravel-microsoft-graph
Далі опублікуйте файл конфігурації:
php artisan vendor:publish --provider="Dcblogdev\MsGraph\MsGraphServiceProvider" --tag="config"
Це створить файл конфігурації за адресою config/msgraph.php
.
Оновіть ваш файл .env
наступними даними:
MSGRAPH_CLIENT_ID=your-client-id
MSGRAPH_SECRET_ID=your-client-secret
MSGRAPH_TENANT_ID=your-tenant-id
MSGRAPH_OAUTH_URL=https://yourdomain.com/msgraph/oauth
MSGRAPH_LANDING_URL=https://yourdomain.com/msgraph
Потім опублікуйте міграцію:
php artisan vendor:publish --provider="Dcblogdev\MsGraph\MsGraphServiceProvider" --tag="migrations"
Зверніть увагу: якщо ви використовуєте Microsoft Graph як сервіс автентифікації, також додайте слухача:
php artisan vendor:publish --provider="Dcblogdev\MsGraph\MsGraphServiceProvider" --tag="Listeners"
Це створить app/Listeners/NewMicrosoft365SignInListener.php
з типовим слухачем, після чого ви можете додати його до app/Providers/AppServiceProvider
:
public function boot(): void
{
Event::listen(
NewMicrosoft365SignInEvent::class,
[NewMicrosoft365SignInListener::class, 'handle']
);
}
use Dcblogdev\MsGraph\MsGraph;
// Перенаправляємо користувача на сторінку входу Microsoft
return (new MsGraph())->connect();
// Обробка зворотного виклику після входу
$msGraph = new MsGraph();
$user = $msGraph->get('/me');
return $user;
use Dcblogdev\MsGraph\MsGraph;
$msGraph = new MsGraph();
$msGraph->emails()
->to(['test@example.com'])
->subject('Привіт від Laravel News')
->body('Це тестовий лист від Laravel News.')
->send();
use Dcblogdev\MsGraph\MsGraph;
$msGraph = new MsGraph();
$files = $msGraph->files()->getFiles('/path/to/folder', 'me');
# Другий параметр визначає, чи використовувати ваш OneDrive, чи групи
# $files = $msGraph->files()->getFiles('/path/to/folder', "groups/$groupId");
return $files;
Якщо ви перебуваєте в екосистемі M365 і користуєтеся Laravel, то пакет Laravel Microsoft Graph може стати для вас незамінним інструментом. Його простота інтеграції API та зручні методи роблять його відмінним вибором для проектів на Laravel, які потребують доступу до функцій Microsoft Graph.
Для детальнішої інформації ознайомтеся з повною документацією та перегляньте джерельний код на GitHub.