[第3回]その他開発に役に立つ情報(Node.js/MS SQL)

こんにちは!DreamHanksのキムヨンビンです。

今回は開発に役に立つ情報をご紹介いたします。

3-1.CSVファイルを生成・ダウンロード

Node.js(Express)でCSVファイルを生成、ダウンロードする方法です。

  1. json2csvをインストール
  2. データベースから取得したデータをCSV形式に変換
  3. 変換したCSVをダウンロードさせる

参考

  • https://sapper-blog-app.vercel.app/blog/node-js-express-csv
  • https://moewe-net.com/nodejs/response-download

3-2. GETDATE()はUTCならば日本の時間にするには?

GETDATE()をそのままで使わず、以下のようにします。

DATEADD(hour, 9, GETDATE())

3-3. Node.jsでバリデーション機能 (joi)

インストール

フォルダー化

projects.schema.js

バリデーション条件

  • .string() : string型か
  • .max(数字):長さが指定した範囲内か
  • .required():空白ではないかどうか
  • .allow(”):空白でもOK

3-4. 急にSQL Databaseが一時停止された場合

データベースのコンピューティングとストレージタブで「自動的に一時停止を有効にする」チェックボックスを外したら、解決できました。(自動的に一時停止されない)

3-5. VSCodeでデバッグする方法

  1. 行番号をクリックしてBreakpointを設定します。
  2. 「Run and Debug」や「create a launch.json file」ボタンをクリックします。DebuggerはNode.jsを選びます。
  3. 「Run and Debug」をクリックした場合はすぐサーバがサーバーが実行されます。
    「create a launch.json file」をクリックした場合は「launch.json」ファイルが作成されます。この場合は下のボタンを押すことで実行することができます。
    *launch.jsonを作った場合は詳しい設定ができます。詳しい内容はこちら
  4. Breakpointに該当するコードが実行される時、実行が一時中断されます。
  5. このようなボタンが表示されます。

    左から:

    1. コードの実行を再開するボタンです。
    2. 次のコードを実行するボタンです。 次のコード構文を実行した後、再び一時停止されます。
    3. 今実行している関数の中に入るためのボタンです。
    4. 現在のコードを実行している上位構文に抜け出すためのボタンです。
    5. アプリケーションを再実行するためのボタンです。
    6. アプリケーションの実行を中断するためのボタンです。
  6. その他にも、変数の値を確認するなどのことができます。

3-6. ブラウザ(Chrome)でフォントを確認する方法

  1. ブラウザでF12を押下して開発ツールを開いて左上にあるアイコン(以下のイメージを参考)を押下
  2. 画面でフォントを確認するところを押下
  3. Elements-ComputedでRendered Fontsを確認できます。

3-7. 急にFunctionが動かない状態になったとき(503エラー)

503エラー(Functions host is not running)になった場合

方法 1Functionsを停止して、また開始する

  1. 関数アプリを停止する
  2. 停止させた関数アプリを開始する

方法 2Functionsを再起動する

3-8. 特定ポートで動いていつプロセスを停止するコマンド

ターミナル上で下記コマンドを実行してください。

  • netstat -a -o:動作しているすべてのピロセス検索
  • taskkill /F /pid (killするポートのpid number)

3-9. 言語を対応するFunction(NVarChar型)

Functionで「N」を使ってNVarchar型のデータを検索する方法

  • Functionでは、SQL文に「N」を使用不可能(シンタックスエラーになる)
  • パラメータを追加するときに追加するデータのタイプをNVarCharに指定するだけで言語を対応して検索可能

3-10. Emailを送る方法

  • SMTPサーバをを使う方法
    1. nodemailerをインストール
    2. メールを送信
  • プロバイダーのAPIを使う方法(SendGridの場合)
    1. @sendgrid/mailをインストール
    2. メールを送信

# 参考 #

3-11. Reactを使ってHTMLメールを作る方法

react-emailを使って、Reactでメールを作ることもできます。

# 参考 #

終わりに

今回の記事は以上になります。

次回は[第4回]Static Web Appsでフロントエンドとサーバレス開発を学びましょう。

ご覧いただきありがとうございます。

スポンサーリンク
dreamhanksをフォローする
スポンサーリンク
DreamHanks Blog