diadia

興味があることをやってみる。自分のメモを残しておきます。

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

djangoログイン時にクッキーにセッションIDをセットする仕組みを見てみたのでメモ

まず認証 認証はユーザーが誰であるかを特定するものである。そのためクレデンシャル情報を用いて認証を行う。 クレデンシャル情報は種類がある。 ユーザーの記憶によるもの(something you know) ユーザーが所有しているもの(something you have) ユーザーの…

authtokenをrestframeworkだけで実装して観察してみる

昔Token認可で実装したことがあるけど、rest-authを使って実装したのでライブラリを使わないで試してみる。 ドキュメント https://www.django-rest-framework.org/api-guide/authentication/#tokenauthentication settings.py まず、Tokenで認可させたい場合…

cookieやlocalStorageを操作するには?

アンドロイドアプリを作る場合はアプリのストレージ領域に暗号化したTokenを保管し、通信を行うときだけそれを引っ張り出してリクエストヘッダにセットして通信を行っていた。クライアントがブラウザの場合にはブラウザに保存するのでどうやって保存して取り…

djangoのキャッシュを使ったセッションの設定

ドキュメント: https://docs.djangoproject.com/ja/3.1/topics/http/sessions/#using-cached-sessions https://docs.djangoproject.com/ja/3.1/topics/cache/#django-s-cache-framework 手順 1 . 概要 今回memcachedにデータを保存するセッション方式の実装…

vscode 使い方メモ

ショートカットキーを使ってエディタとターミナルを移動する設定 https://torajirousan.hatenadiary.jp/entry/2021/01/13/170804 デバッグモード 最近デバッグモードの使い方が分かってきた。 自宅でも使えるように設定する際に調べたことを記録しておく。 …

vuexのメモ

コンポーネント間のデータの受け渡しについて。 コンポーネント間のデータの受け渡しの方法はいくつか方法があることがわかった。 props, emitを使った方法。 vuexを使った方法。 vuexを使った方法を考える。 コンポーネント間の通信:もうコンポーネントじ…

チーム開発で使うgitについて

プログラミングを始めてあと少しで3年になりますが、がっつり開発をやっている会社につとめるのは今回が初めてでgitによるチーム開発について分かったことを少しまとめる。 ブランチの扱い 自分の勤める環境では、master, dev, featureというブランチが存在…

javascriptのasync awaitについてメモ

typescriptをやってPromiseの存在を知った。がPromiseという概念が未だに分からない。。。 少し触ってみて多少のasyc awaitを使う場合と使わない場合で何か異なることを発見したので備忘録としてメモしておく。 async await を使わない場合 private uploadIm…

javascriptで画像アップロード

mpaのdjnagoで画像をアップロードするにはフロントエンドではhtmlにinputタグ(type="file")をセットして、何らかのボタンを押してpostメソッドで送信し、views.pyにてrequest.POSTのような形で画像データを取り出してやれば画像の取り扱いはできた。 しか…

typescriptとvueの単一ファイルコンポーネントを使う

設定条件: vue.js 2系(3系だと書き方が結構違うので困難だった。) typescriptを使う 単一ファイルコンポーネントを使う。単一ファイルコンポーネントではテンプレートとスタイルタグのみを記入し、スクリプトタグは.tsファイルの読込みのみ行う。 作ってみ…

チームで開発する際に分かったこと

修正や機能追加について -> どのように作業するのが効率が良いのか? -> そもそも既存のコード全体を眺めて理解しようとしてもあまり理解できなかった -> 修正や機能追加に関してはまず既存のプロダクトに似たような機能がないか確認する -> 現状では、その確…

djangoとvuejsをcdn以外の方法で共存させる

npmにvueを入れて構築する方法を試みる。djangoはdjango rest frameworkを使う。 今回気になる事項は、 どうやってdjangoとvueをcdn以外の方法で共存させる環境を構築するのか どういう仕組でdjangoとvueが連携する仕組みになっているのか vueを使うにあたり…

typescriptのみで構築してみた

webpackやnpmの仕組みを分かっていないので一番シンプルな構成でtypescriptを実装する方法を試してみる。 参考資料 以下を記事に従って環境を構築してみた。プロジェクト名はsssとして作成してみた。 最新版TypeScript+webpack 5の環境構築まとめ(React, Vue…

npmに関して分かったこと

右も左も分からないnpmについて少しずつ試してみて分かったことを書き溜める。 パッケージのバージョンを変更をする 1 package.json内のパッケージのバージョンを編集する。 $ vi package.json 2 変更を反映する $ npm update npm install について npm inst…

webpackに関するメモ

webpackのバージョン確認方法 $ ./node_modules/.bin/webpack -v webpack-cli 4.1.0 webpack 5.2.0 webpackのバージョンはどうやら3と4系でwebpack.config.jsで書き方が変わるらしい。 webpack4に更新した時にこけた所まとめ - Qiita

npmのpackage.jsonについて分かったこと

package.jsonには、scripts項目が存在する。 どんなものか? これはnpm runコマンドのあとに続行するコマンドを定義することができるようになる。 $ npm init 言うまでもないが、上記のコマンドを実行するとそのディレクトリにpackage.jsonというファイルが生…

typescriptメモ

基本の型(Basic Types, Primitive Type) TypeScript: Handbook - Basic Types Boolean Number String Array Tuple Enum Unknown Any Void Null and Undefined Never Object アロー関数の戻り値の型定義について理解していない。 環境構築 書いたtypescriptを…

バックエンドでKotlinをさわる

お世話になった本は以下。 入門!実践!サーバーサイドKotlin (技術の泉シリーズ(NextPublishing)) | 横山 恭大 | 工学 | Kindleストア | Amazon androidアプリケーションでKotlinは使っていたけれども、主戦場にしたいバックエンドでKotlinが使えてないの…

応用情報技術者試験の参考書を読むのメモ

掛け算とか割り算はどうやって実現しているか? -> シフト演算を使って掛け算や割り算を行っている。 シフト演算...ビットの並びをまとめて左にずらしたり、右にずらしたりすることで元の値の2倍や1/2倍という計算を実現している。 テストケース設計手法: 同…

みんなのコンピュータサイエンスを読んでみたときのメモ

**通読2回目 一回目では何を言っているのかほとんど理解できなかった。したがって読書で調べたこと、メモを残しておく。 第1章 「プールが温かければ、私は泳ぐ」の意味は、私は温水でしか泳がない、を示すわけではない。「冷たいプール」に関しては何も保証…

AWS: Error creating VPCが出た

aws

terraform applyを実行した結果以下のエラーが表示された。 Error: Error creating VPC: VpcLimitExceeded: The maximum number of VPCs has been reached. status code: 400, request id: c5e55b9d-d44d-437b-bcd3-2303794c1c46 stackoverflow 上記リンク先…

terraform 既存のリソースを使うことについて

今まで勝手に思ってたことにterraformでインフラを立ち上げるときには、terraform内でリソースを生成し、それを組み合わせて環境を作り上げないといけないと思っていた。 しかしながら一度作成したリソースを消さなければ再利用することができる事がわかった…

ECRにpushとpullを試みたときのメモ

ECSを使うためにはどうやらECRが必要だということが判明した。 ECRはdockerhubのようなdocker Imageのコンテナのリポジトリサービスであるようだ。 とりあえずpushとpullをできるようにしたい。 ドキュメントを読んでみると、ECRにpush, pullをするためには…

EC2インスタンスに複数のアパッチコンテナを起動して接続を試みる

今まで一つのサーバーにwebサーバーなどのソフトウェアが一つずつ入っている状況が自然なことだと考えてきたので、同じソフトウェアが同時に動く環境を用意し、いわゆるコンテナという概念を体感してみた。 方法としてはec2インスタンスにcontainerを3つ追加…

terraformを使えるようにする設定

IAMでterraformからインフラを作成するためのユーザーを作成する。 作成するとアクセスキーとシークレットキーが手に入るので、これを環境変数に加えておくこと。 さらにはデフォルトのリージョンも環境変数として定める。 vi ~/.bash_profile #追加 #Terraf…

基本の基本 EC2にssh接続する(復習)

コンテンツ マネージドコンソールを使ってEC2を立ち上げ、SSH接続を行う TERRAFORMから同じことを実現させる 一番最初の基本形としてEC2インスタンスを立ち上げて、ssh接続するまでをマネージドコンソールでどのようにセッティングすればよいかメモしておく…

djangoのcontextをjavascriptに渡す際に困る場合がある件

大した内容ではないので問題点と対処法を軽く書く。 djangoのcontextに格納したデータをjavascriptにわたす方法 最初にviewにてデータをcontextに格納する テンプレートにてjavascriptを走らせ、contextのデータを受け取る def example(self, request, *args…

leafletを使って以下が表示される。"This content should also be served over HTTPS."

問題は何なのか leafletを使っていて以下の内容がconsoleに表示される事になった。 Mixed Content: The page at '<URL>' was loaded over HTTPS, but requested an insecure image '<URL>'. This content should also be served over HTTPS. これは何を示しているかと</url></url>…

supervisorについてメモ

ドキュメント Supervisor: A Process Control System — Supervisor 4.2.0 documentation supervisorは何なのか? これはプロセス管理のツールである。 fabricを使った自動デプロイスクリプトを書いては見たもののgunicornのプロセスを切ってから新たに立ち上…

Djangoのformをより良く見せるために(改訂版)

Djangoにおいてformウィジェットの理解を深めない限り、forms.ModelFormやforms.Formの利用したとて、フォームを使った画面が残念な結果になってしまう。 見た目の良いフォーム画面を作るには htmlファイルを自ら作成して好みのformを作成する ModelFormやFo…