laravel - 如何使用 laravel 在 Outlook 上创建日历事件?
问题描述
在 Outlook 日历上创建活动时遇到问题。超过 60 秒的最大执行时间 使用https://github.com/microsoftgraph/msgraph-sdk-php ..。如何解决此问题以克服超时错误并在 Outlook 上创建事件?
路线
Route::get('/graph', 'microsoftapi@createEvent');
microsoftapi 控制器
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\User;
use Jumbojett\OpenIDConnectClient;
use GuzzleHttp\Client;
use Microsoft\Graph\Graph;
use Microsoft\Graph\Model;
class microsoftapi extends Controller
{
//
public $accessToken;
public function __construct()
{
$guzzle = new \GuzzleHttp\Client();
$tenantId = '***************';
$url = 'https://login.microsoftonline.com/' . $tenantId . '/oauth2/token?api-version=1.0';
$token = json_decode($guzzle->post($url, [
'form_params' => [
'client_id' => "******************",
'client_secret' => "******************",
'resource' => 'https://graph.microsoft.com/',
'grant_type' => 'client_credentials',
],
])->getBody()->getContents());
$this->accessToken = $token->access_token;
}
public function createEvent(){
$data = [
'Subject' => 'Discuss the Calendar REST API',
'Body' => [
'ContentType' => 'HTML',
'Content' => 'I think it will meet our requirements!',
],
'Start' => [
'DateTime' => '2017-04-03T10:00:00',
'TimeZone' => 'Pacific Standard Time',
],
'End' => [
'DateTime' => '2017-04-03T11:00:00',
'TimeZone' => 'Pacific Standard Time',
],
];
$baseId = 'base-ID';
$calendarId = $baseId . 'calendar-ID';
$url = "/me/calendars/$calendarId/events";
$graph = new Graph();
$graph->setAccessToken($this->accessToken);
$graph->setProxyPort("localhost:8000");
$response = $graph->createRequest("POST", $url)
->attachBody($data)
->setReturnType(Event::class)
->execute();
dump($response);
}
}
解决方案
推荐阅读
- python - Python - 加载 .txt 文件的数据并保存在 np.array
- python - 我在 Python 官方文档中找不到的一种方法
- machine-learning - OpenPose 如何通过输出形状和真实不匹配来实现其损失函数?
- angular - 未在 Angular 中实现的内容安全策略 (CSP)
- postgresql - 放弃 postgres 角色
- javascript - 以编程方式设置 datetime-local 的输入类型
- python - 如何处理似乎过期的请求授权标头
- opencart - 如何克服opencart致命错误:未捕获的RuntimeException:无法写入缓存目录
- python - 如何修复井字游戏以使屏幕正常运行?
- html - 如何将鼠标悬停在图像上并以角度显示信息框?