API

Laravel6 jwt-auth トークンエラーハンドリング Middleware

Laravelのミドルウェア機能を利用して実装していきます😊 LaravelのMiddlewareは リクエストデータ → Middleware → コントローラ → モデル → コントローラ → レスポンス   トークンの検証用Middleware CheckToken   ミドルウェアの作成 $ php artisan make:middleware CheckRefre …

AWS

Laravel6 AWS SES連携 + Bounce, Complaint対応 その③

  「その②まででBounce処理もしっかりできたね😊」 「スパム配信するなよな!(ではSESでサーバレスメール送信ライフを楽しんでください。)」   お疲れ様〜!         実は全然だめだった Bounceだけでなく、Complaintも処理しなくてはいけないのだ!にゃーん🐱   バックナンバー Laravel6 AWS …

PHP, セキュリティ

Laravel6のbcrypt関数について

Laravel6.xのデフォルトのbcryptについて ハッシュドライバー:bcrypt saltの形式:$2y$ ハッシュ関数の適用回数:10回   random saltによって同じ値のInputでも毎回DBに登録されるハッシュ値は変わる $2y$10$xxxxxxxxxx … $2y$10$yyyyyyyyyy …   最初の共通部分について $2y:Saltの形 …

RDB

ログインロックテーブル設計 WPプラグインから学ぶ

    WP Limit Login Attemptsから学ぶ ログイン回数制限でのプラグイン。 アプリのチェックイン回数制限なんかもこの応用でできるね!🐱✨   wp_user_login_logテーブル     wp_limit_loginテーブル login_attempts: ログイン失敗回数を記録 attempt_time: ログイン失敗 …

AWS

Laravel6 AWS SES連携 + Bounce, Complaint対応 その②

  その①でLaravel + SESのメール認証までできました😊   バックナンバー Laravel6 AWS SES連携 + Bounce, Complaint対応 その① Laravel6 AWS SES連携 + Bounce, Complaint対応 その② Laravel6 AWS SES連携 + Bounce, Complaint対応 その③   その②で …

Mac

Mac マウス USBが動かない

  SMCリセット 「Control 」+ 「左Shift」 +「option」 の3つのキーを押しながら、電源ボタンを長押し →電源が切れる 電源ボタンを押して起動させる   NVRAMクリア 「option」+「command」+「P」+「R」の4つのキーを押しながら、電源ボタンを長押し →電源が切れる 電源ボタンを押して起動させる    

AWS

Laravel6 AWS SES連携 + Bounce, Complaint対応 その①

  会員認証やSES バウンス周りやったった。1月中旬までの仕事をがしがし終わらせるのだ🐱https://t.co/XgQdAfsHvW — 優さん🌷個人開発 (@yuu13n6) January 2, 2020   私たちが達成すべきゴール   Laravel → SES → SNS → SQS → Laravel → DB   送信処理 Laravelか …

PHP

Laravel トランザクション リトライ設定 DB:Transaction()

  この記事で紹介すること try catchを利用する リトライ回数を指定 失敗時にロールバックしてログ出力   ざっくりこう try { $retries = (int)3; // トランザクションリトライ回数 DB::beginTransaction(null, $retries); // データベースの一連の処理 DB::commit(); $message = Con …

PHP

Laravel 中間テーブルを利用した多対多のリレーション

2千分後の私へ。   ポイント   App/Http/Models/Job.php <?php namespace App\Http\Models; use App\User; use Illuminate\Database\Eloquent\Model; class Job extends Model { public function users() { return …

開発

うごうご動け! GitLab Runner

  CI/CDの合計が2, 000分を超えると制限がかかります。 その場合にGitLab Runnerを利用して自前で動かしつつGitLabをまた利用できます。   // あんまり実用的じゃないかも?CIがこけまくる…コーンコーン。きつねちゃんにお金を払うのが絶対良いよ!   トークンの確保   プロジェクトと紐づけるトークンを確保します。 ht …

PHP

Laravel6 JWT ユーザ登録+メール認証 + jwt-auth(JWT)

  この記事では実践的なコードであっさりまとめます。   JWT関連のJSONなどの細かいのは下記記事でまとめています。 Laravel JWTで認証API メール認証   Gmailの利用 開発用のメールサーバとして、Gmailサーバを送信サーバとして利用します。 // 本番環境はAWS SES, SendGridあたりを利用するのがおすすめです。   G …

NoSQL, RDB, SEノウハウ

RDB NoSQLパフォーマンス

  ざっくり覚える数字 ざっくり感が大事。 ちょっと好きかも?より大好き!の方が嬉しいでしょ? MySQL SELECTは100,000回/秒 UPDATE15,000回/秒 NoSQL SELECTは200,000〜750,000回/秒 UPDATE30,000回/秒 データサイズ感 100万レコード →  1GB     ディスク オンメモリ + SSDがさいつよ …