2020-01-01から1ヶ月間の記事一覧

Railsのreponseのcache-controlを上書きする

こんにちは!kossyです! さて、今回はRailsでAPIを実装する際に、responseのcache-controlを上書きする方法について ブログに残してみたいと思います。 そもそもcache-controlってなに? Cache-Control 一般ヘッダーフィールドは、リクエストとレスポンスの…

EGPとIGP

こんにちは!kossyです! さて、今回はインターネットのルーティングプロトコルであるEGPとIGPについて、 ブログに残してみたいと思います。 ルーター同士で通信して情報をやりとりするための規約 インターネットの通信の仕組みには、指定したIPアドレスへの…

yield @variable if block_given? ってなに?

こんにちは!kossyです! さて、今回は、トークンベースの認証の仕組みを提供するgemであるdevise_token_authの コードリーディングをしていた時に書かれていたある構文について、ブログに残してみたいと思います。 yield @variable if block_given? なんだ…

Rubyの標準モジュール「securerandom」を使ってトークンを作ってみた

こんにちは!kossyです! さて、今回はRubyの標準モジュールである「securerandom」を使って、 トークンを作成する手順についてブログに残してみたいと思います。 環境 Ruby 2.5.1 Rails 5.2.3 MacOS Mojave libディレクトリにtoken_generator.rbを作成 トー…

Railsのvalidationでのlambdaの使い方

こんにちは!kossyです! さて、今回は、Railsのvalidationでのlambdaの使い方を ブログに残してみたいと思います。 後置ifでlambdaを渡す サンプルコードを晒してみます。 class User before_validation :name, presence: true if lambda { |obj| name.will…

DockerfileのENVとARGの違いとは?

こんにちは!kossyです! さて、今回はDockerfileを記述する際に用いられるインストラクションの一つである、 ENVとARGの違いについてブログに残してみたいと思います。 そもそもDockerとはなんぞや?という方は、 knowledge.sakura.ad.jp 上記のサイトが参…

Cloud Storageにアプリをデプロイする際に最新のコードがすぐに反映されるようにする

こんにちは!kossyです! さて、今回はGCPのCloud Storageにgsutilを使ってアプリケーションをデプロイする際に、 最新のコードがすぐに反映されるようにする方法を ブログに残してみたいと思います。 これやらないとデプロイしても最新のコードが反映されな…

Rubyのbegin-end構文で変数を定義する

こんにちは!kossyです! さて、今回はRubyのbegin-end構文で変数を定義する方法についてブログに残してみたいと思います。 begin-end構文とは?begin-endは例外処理でよく用いられるイメージですが、例外処理以外の用途でも使うことができるようです。What …

development_secret.txtってなんだ?

こんにちは!kossyです! さて、今回はRails 6 でアプリケーションを開発している時に見つけたテキストファイルである、 「./tmp/development_secret.txt」についてブログに残してみたいと思います。 dev環境およびテスト環境の場合にsecret_key_baseを生成…