初版:2018.12.7
- laravel-5.7, php-7.2
対応
- ルーティング調整
- 不要ファイル削除
- レスポンスをjsonに固定
- Auth系いらない場合
ルーティング調整
-
webルート削除
-
routes/web.phpを削除 -
app/Providers/RouteServiceProvider.phpからmapWebRoutes()の実装と呼び出しを削除 -
app/Http/Kernel.phpの$middlewareGroups['web']を削除
-
-
apiルートのprefix消す
-
app/Providers/RouteServiceProvider.phpのmapApiRoutes()内、prefix('api')をprefix(null)にする
-
不要ファイル削除
-
Controllers
-
app/Http/Controllers/Auth/*すべて削除
-
-
frontend系
package.jsonwebpack.mix.jspublic/css/app.csspublic/js/app.jspublic/svg/*resources/js/*resources/sass/*-
resources/views/*- viewsは空にして、
resources/views/.gitkeepでも入れとく
- viewsは空にして、
-
Middleware
-
app/Http/Middleware/VerifyCsrfToken.php*Kernel.phpでのクラス名指定も削除 -
app/Http/Middleware/EncryptCookies.php* 同上削除 -
app/Http/Middleware/RedirectIfAuthenticated.php* 同上削除
-
レスポンスをjsonに固定
Requestクラスを上書き
<?php
/**
* always json
* - public/index.phpでRequestクラスを直接書き換え
* - 以下は入れ替わってるのを確認
* - `request()`
* - `\Illuminate\Support\Facades\Request::getFacadeRoot()`
* - DI: `function hoge(Request $req) {}`
* ほかになにか使われ方あったっけ..
*/
namespace App\Http;
class Request extends \Illuminate\Http\Request
{
/**
* override
*/
public function expectsJson()
{
return true;
}
/**
* override
*/
public function wantsJson()
{
return true;
}
}
/public/index.php
$response = $kernel->handle(
- $request = Illuminate\Http\Request::capture()
+ $request = \App\Http\Request::capture()
);
Auth系いらない場合
-
削除
app/Http/Middleware/Authenticate.phpapp/Providers/AuthServiceProvider.phpconfig/auth.php
-
修正
-
config/app.phpでAuthServiceProviderを削除
// App\Providers\AuthServiceProvider::class, // Removed -
* `app/User.php` をどうにかする
* Auth系の依存をはずす
* `config/channels.php`も調整するか、使って無ければコメントアウト