cgmalaquias / basecamp3-laravel
Basecamp 3 API 与 Laravel 5 集成
dev-master
2016-10-14 17:36 UTC
Requires
- php: >=5.3.0
- guzzle/guzzle: ~3.3
- laravel/framework: >=5.2
This package is not auto-updated.
Last update: 2024-09-28 18:37:11 UTC
README
此 Basecamp 3 API 与 Laravel 5 集成 将通过 37 Signals 提供的 Basecamp 3 新 API 将 Laravel 5 应用 集成。
安装
我们建议使用 composer 进行安装:(在安装 Laravel 5 之后)
$ php composer.phar require cgmalaquias/basecamp3-laravel
使用
为了使用这个库,您需要在 https://integrate.37signals.com/ 上创建一个账户。请使用 Laravel Socialite 库。
认证后,在名为 BasecampController.php 的控制器中使用以下配置:
使用 OAuth 令牌进行认证
以下是一个示例,展示了您的控制器如何使用 handle 和 callback:
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Http\Controllers\Controller; use Socialite; use Basecamp; class BasecampController extends Controller { /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function handle(Request $request) { return Socialite::driver('Thitysevensignals')->redirect(); } public function callback(Request $request) { $user = Socialite::driver('Thitysevensignals')->stateless()->user(); $client = Basecamp\BasecampClient::factory(array( 'base_url' => $user->user['accounts'][1]['href'], 'auth' => 'oauth', 'username' => $user->user['identity']['email_address'], 'user_id' => $user->user['identity']['id'], //$user->user['accounts'][1]['id'], 'app_name' => $user->user['accounts'][1]['name'], 'app_contact' => $user->user['identity']['email_address'], 'token' => $user->token )); //dd($user); dd($client); }
在控制器中,您可以创建方法以接受该库中所有复合请求,并进行测试。
- updateTodo
- grantAccess
- updateCalendar
- deleteCalendar
- updateCalendarEvent
- deleteCalendarEvent
- updateProjectCalendarEvent
- deleteProjectCalendarEvent