firebase hostingを利用しているサービスでメンテナンスモードの実装を考えた結果をまとめる。 理想 SEO的に503 service unavailable を返したい firebaseの機能だけでやりたい(cloud runとか使わない) 全アクセスを503ページへ tl;dr SPAモードのhostingで…
クライアント側で取得したGoogle reCAPTCHA トークンの検証をNest.jsでやろうと思ったら、無駄にハマったのでメモ tl;dr データをapplication/x-www-form-urlencodedで送れ 検証方法 公式のドキュメントで指定されているエンドポイントに対してPOSTでクライ…
もはや写真集を並べた画像を上げたいだけだが、今年も書く。 yuzu441.hateblo.jp 仕事 去年GCPメインでやっていくって記事に書いてたんだけど、会社のサービスをGCPで組んでてfirebase含め色んなサービスに手を出していて、その分awsに触れる事が余り無くな…
年末なので恒例のサブスク整理 yuzu441.hateblo.jp 今年はコロナで色々変わってしまったので色々増えた Intellij IDEA 11,110円/年 一時周りに合わせてvscode使っていたんだけど、ショートカットを覚えてしまったのでやっぱ乗り換え面倒だな〜と思った結果、…
gaeにデプロイされているNest.jsプロジェクトで、レスポンスをエッジサーバーにキャッシュさせたい。 tl;dr いい感じのHeader設定すればキャッシュできそう csurf使ってるとset-cookieが邪魔 interceptorでresponseのheaderからset-cookieヘッダーを削除 GAE…
ユーザー登録を作っていて、登録時にブラウザに認証情報を保存した場合に保存される情報が意図したものではなく、IDではないものをIDとして保存してしまう問題に出会ったメモ。 急ぎの方は「まとめ」まで飛ばしてください。 題材のformと問題の解説 メールア…
リモートワークになる前に充電器を持ち運ぶのがめんどくさくて小さいのを会社に買ってもらって使ってたけど、ある時いきなりMBPが充電できなくなって割と焦った。ただamazonのページをよく見ると18ヶ月間のサポートがあったので問い合わせたら、新品を送って…
yupのYup.date().required('プロパティは必須です')のようなメッセージを出すと思うんですが、Yup.date()の変換に失敗した場合に出るメッセージの指定方法がぱっとわからなかったのでメモ github.com tl;dr typeErrorを使う そもそもの発端 他の主要ブラウザ…
家でslack botなどが動いてるラズパイ3を別のことに使う事になったので、今動いてるものを昔使ってたラズパイ2に移すことにした。そのためにラズパイ3用の新しいsdカードを用意する必要が出てきて、前にリリースされたraspberry pi imagerをubuntuで使用して…
webhookのverificationでbodyParseされてないraw bodyが必要になって割と困ったのでメモ tl;dr 結局方法3で実装した ダメだったやり方 検索すると一番最初に以下のstack overflowが引っかかって、raw-bodyというnpmモジュールをインストールしてrawbodyを渡…
nest.jsで開発をしていて、webhookを利用したい時に特定のパスだけcsurfチェックを外したい時に公式の説明とかだと「csrfのガードの前に特定のエンドポイントを設定する」方法しか書かれていなくてnestでは使えなかった。 そのため直接app.use(csurf())する…
Typescriptでコードを書いていてクラスの型から関数以外を抜き出した型が欲しくて、typescript meetupでMapped Typesとかのセッション見て頑張ったらできるのではということでやってみた typescript-jp.connpass.com 要するに以下のようなクラスからxとyだけ…
github.com tl;dr 一旦LogLevelの設定でlogをなくす 起動後Loggerの設定を上書きする きっかけ 最近nest.jsを使っていて、serverless環境で動かす時にgoのechoだとできたんだけど、起動時のログ出るのなんとか抑制できないかなーと思って結構無理やりっぽく…
母があまりにも通知に気づかないのと、寝てない自慢をするので睡眠トラッカーが欲しくmi band4を購入しました Xiaomi Mi Smart Band 4 【日本正規代理店品】スマートバンド 活動量計 万歩計 心拍計 健康管理 睡眠モニター 5ATM防水 着信通知 音楽再生コント…
会社のwebサイトに導入したGoogle Formがsubmitされた時にG Suiteで用意したメーリングリスト(グループ)にメールを送りたかっただけなのに 信じられないくらいハマって時間かかったので、誰かが同じような所でハマった時に助けになればと思いメモ ハマった…
去年も書いてたやつの2019年度版 yuzu441.hateblo.jp 2019年 仕事 去年はGWまでには〜って言ってたけど3月には再就職してたので思ったより早かったな 転職してからはReact Nativeでアプリ開発したり、 Node.js × awsの案件をやったりしてた 今はReact, Golan…
きりがないので漫画は入れない 書き出してみてわかる、本読んでるつもりだったけど案外読んでなかったので来年は月1冊くらいは目標にしたい 技術書 仕事で必要になったりで買ってみたものの読む速度が遅くて、もらった本とかも未だに積んでてまずい ソフトウ…
年末という事で課金してるサービスの棚卸しを兼ねて出してみる Intellij IDEA 14688円/年 2年目継続 仕事でgolang使うし。。と自分に言い聞かせて購入した。最近vscodeが優秀なので機会減ってるけど、やっぱり使うと頭良い Google Domains 1400円/年 お○前.c…
年末に向けて映画見たりすることが増えるだろうなーということでDisney Deluxeに契約してみた オタクなので(ry pic.twitter.com/CbqbtJbbkk— ゆず☕️ (@yuzu_441) 2019年12月1日 Disney Deluxeとは www.disney.co.jp Disney、PIXAR、STAR WARS、MARVELの作品…
Alfred4にアップデートしたタイミングでなぜかアプリケーションがAlfredで検索に引っかからなくなり起動できなくなった www.alfredapp.com たとえばslackを起動しようとするとこんな感じ 検索するとAlfredの"Clear Application Cache"などが出てくるが実行し…
仕事でjwt使う〜?って話になったので雰囲気しかしらなかったので調べてみた jwtとは <header>.<payload>.<sign>で構成されている 各要素が.(dot)で区切られている header {"typ": "JWT", "alg": "HS256"} typはJWTの文字列でjwtで有ることを表していて algは署名アルゴリズム HS256</sign></payload></header>…
周りでこれからReact始める人とかが増えてきて、以外と知られてないんだな〜ってことがあったのでReactに型をつけるというかTypeScript(以下ts), Flowと prop-typesの関係について書く tl;dr prop-typeはやめとけ tsはいいぞ prop-typesとは 昔はReactのcore…
最近ちょこちょこGolangを勉強していて、1.13になってデフォルトONになるgo modulesを使った時にimportをどうやるのかわからなくて困ったのでメモ tl;dr go.modのmodule項目とwikiを見て github.com gopath mode go modulesじゃない時はGOPATHがあったのでim…
golangのwebフレームワークのechoで実行時に表示されるバナー(ロゴみたいなEcho文字列)がGoogleAppEngineのログ表示を見づらくしてしまっていたので、それの表示を止める 要するに↓のこれを表示しないようにします ____ __ / __/___/ / ___ / _// __/ _ \/…
完全に書くの忘れてて学校の後輩に「まだニートなんですか?」みたいに聞かれたので書いておく 退職エントリー書いてから早くも7ヶ月、お気づきの方もいらっしゃるかと思いますが就職しました いつ就職したの 3月1日に初出社してました ちなみに出社初日の様…
yuzu441.hateblo.jp parcelでReactのアプリケーション書いてて、画像を動的に取得したい時にやり方が分からず困ったのでメモ やりたかったこと jsonか何かにデータを定義しておいて、そこから画面を組み立てたかった。 課題 静的な画像であればhtml内に含ま…
goを始めたのはいいがmodules周りがよくわからず、migrationしたいだけなのに手間取ったのでメモ github.com tl;dr cliをインストール migration用のファイルを書く mysqlの起動 mysqlに対してmigrate実行 cliのインストール そもそもmigrateはcliで実行する…
react nativeにはAsyncStorageというデータの永続化に使用する機能がありますが、今後react nativeのコアから出されてreact-native-community下に移されるみたいです github.com そのため将来的にAsyncStorageを使用しているアプリはこのパッケージに移行し…
thinkpad上のubuntuで開発してたんですが、macに開発環境を作る際に設定が面倒で環境を同期する方法を調べました 同期方法 設定の同期方法には公式見てる感じ2種類あるみたいですが、今回はIDEの設定同期機能を使います IDEの設定同期機能を使う 要jetbrains…
最近Reactを素振りするための環境として、前から話題になってたparcelを使ってみたらとても簡単に動作環境作れたのでその紹介 ja.reactjs.org parceljs.org githubに今回のコード等すべて置いといたので、読むの面倒な人はそちらで github.com 環境作成と依…