Node.js関連のことを調べてみた2020年12月24日

Node.js関連のことを調べてみた2020年12月24日

discord.jsでembed(埋め込み)を送りたい。

discord.jsで埋め込みを送信したいと思います。
埋め込みのソースはこのような形になっております。

“`javascript:main.js
if (message.content === ‘ここのメッセージが送られたら反応する’) {
try {
message.channel.send(
{embed: {
timestamp: new Date(),
color: “RANDOM”,
description: `送るメッセージ`
}}
);//送信
} catch (err) {//エラーが起きたら反応する。
message.channel.send(
{embed: {
timestamp: new Date(),
color: “RANDOM”,
description: “**エラー : 実行中にエラーが発生しました。**\n“`js\n” + err + ““`”
}});//送信
}}
“`
これが埋め込みの基本的な形です。
さらに埋め込みにはメンションを

元記事を表示

[Node.js] Node.jsを用いてMySQLにデータを登録する

#Node.jsを用いてMySQLにデータを登録する

※ 自分用の覚え書きでございます。

Node.jsを用いてMySQLにデータを登録します。ローカル環境で実行しています。

###MySQLに作成したテーブル

f_id , f_name , f_age という3つのフィールドを作成しました。

![007a.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/897250/1527839a-d892-b5f1-b107-ac5d88a7bcbd.png)

###Node.js側の記述

/ (localhostのルート) にアクセスしたとき、SELECT文を実行します。
/entry に post したとき、INSERT文を実行します。

“`javascript:app.js
const express = require(‘express’);
const mysql = require(‘mysql’);
const app = express();

app.use(express.ur

元記事を表示

Node.js バージョンアップのメモ

nuxtを立ち上げると以下のエラーが発生した。

“`
Error: No valid exports main found for ‘/app/node_modules/colorette’
“`

node.jsのバージョンが古いのが原因のようなので
バージョンアップをすることに。

以下、バージョンアップをした時のメモを書き残します。

1.現在のバージョンを確認

“`
$ node -v
v13.2.0
“`

2.現在の推奨バージョン or 最新バージョンを[Node.js](https://nodejs.org/en/download/)で確認

もしくは、以下のコマンドでインストールできるバージョンを確認

“`
$ nodebrew ls-remote
v0.0.1 v0.0.2 v0.0.3 v0.0.4 v0.0.5 v0.0.6

v0.1.0 v0.1.1 v0.1.2 v0.1.3 v0.1.4 v0.1.5 v0.1.6 v0.1.7
v0.1.8 v0.1.9

元記事を表示

プログラミング初学者の現役医師が、firebase使って診断名を管理できるLINEBOTを実装してみた。

# 皆さん、ご自身の病名(医学的には診断名)を覚えていますか?

僕の本職は医師(開業医)です。
日常診療の課題感から、以下のような、『診断名を保管でき、かつ、必要に応じて引き出せる』アプリを実装しました。
動作は以下です。

【初心者】動画作成アプリを作ってみた(フロントのみ)

#はじめに

今回はじめて投稿します、fuuk4といいます。

今回の内容は、卒業制作にて動画作成アプリ(簡易)をweb上でできるものを作成したときに、Reactを使ったので感想や悩んだことを、まとめていこうと思います!

今回作ったアプリのソースに関しては、膨大な量なので一部を抜粋して投稿しています。
すべてのソースについてはこちらの[GitHub](“https://github.com/fuuk4/node-video-edit-simply”)より閲覧の方をよろしくおねがいします。

完全に理解してコードを書いていた感じではないので、指摘等ありましたらよろしくおねがいします。

##今回自分が使ったもの
フロントエンド
React, Redux
バックエンド
Django

##初めて使った印象
今まで自分は、WebアプリケーションをJavaとかで作ってきましたが、それとは全く異なり、**SPAってスゲーー!**ってなりました。
1枚のページでいろんな操作ができるって便利だなーって印象でしたね〜。

###ただ、やっぱり難しかった…
もう、はじめは何に手をつければいいのか

元記事を表示

【Node.js Express】Bcryptを用いて平文をハッシュ化する。

※当方駆け出しエンジニアのため、間違っていることも多々あると思いますので、ご了承ください。また、間違いに気付いた方はご一報いただけると幸いです。

#bcryptを用いたハッシュ化
bcrypt というパッケージを用いて、Node.jsでパスワードをハッシュ化し保存します。
例としてusersControllerでサインアップ時にパスワードをハッシュ化します。

bcryptをインストールします。

“`
npm install bcrypt
“`

ハッシュ化を実施するコントローラーでロードします。

以下のようなusresControllerがあるとします。サインアップ時に使用するコントローラーです。
ORMにsequelizeを用いています。

sequelizeについては、こちらをご覧ください。
[【Express】ExpressにSequelizeを導入しORMでデーターベースを操作する。(SQLite3)]
(https://qiita.com/sho_U/items/9df724192fd48e760f79)

“`usersController.js

func

元記事を表示

nodejs path.resolve試す

resolve関数にpathを渡すとpathを連結してくれる。

“`typescript

import * as path from ‘path’;
console.log(path.resolve(__dirname, ‘hoge’, ‘fuga.csv’))
“`

“`
/path/hoge/fuga.csv
“`

元記事を表示

nodejs __dirname

__dirnameは、現在のJavaScriptファイルが存在するフォルダーのパスを返します。

“`
console.log(__dirname)
“`

元記事を表示

中華製npmを知ってますか?! cnpmを紹介(ネタ)

Node.jsアドベントカレンダー21日目になります。
npmといえば、Node.jsやフロントエンド開発で欠かせないツールですよね。そんな **npmの中国版がある**ことをご存知でしょうか。

仕事柄、中国に行ったり、中国にいる人とやりとりしたりすることがありますが、その辺に関連した話です。実用性はほぼ無いので話のネタだと思ってもらえると幸いです。(アドカレ遅刻すみません)

> ![スクリーンショット 2020-12-22 11.54.59.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/35387/dfd62619-9ec8-5a9b-523c-07fef82f6904.png “スクリーンショット 2020-12-22 11.54.59.png”)
> [IoTLT vol70](https://iotlt.connpass.com/event/196360)で話をしたネタです。 スライドは[こちら](https://speakerdeck.com/n0bisuke2/zhong-hua-zh

元記事を表示

ローカルでNode-REDを実行してみた

Node-RED アドベントカレンダー22日目!
今まで Node-RED は enebular や IBM Cloud 上で使ったことがありましたが、そういえばローカルで実行したことがないなぁと思ったのでやってみました。

ドキュメントの[「ローカルでNode-REDを実行する」](https://nodered.jp/docs/getting-started/local) を読みながら自分のローカル環境で実行した時の手順をまとめてみます。

#実行時のローカル環境
– macOS 10.14.6(Mojave)
– Node.js 10.16.3

#手順ざっくり
1-a. Node.js のインストール
1-b. 既にインストールしたことがある場合は [Node.js のバージョン確認](https://nodered.jp/docs/faq/node-versions)
  ※ 2020年12月22日現在、バージョン 10.x と 12.x の Node.js を推奨しているようです
2. npm で Node-RED をインストール
3. Node-RED を実行する
4.

元記事を表示

[Node.js] Node.jsからMySqlへのデータの登録・更新・削除

#Node.jsからMySqlへのデータの更新

※自分用の覚え書きでございます。

req を受け取り、MySql へ post します。

###INSERT

“`javascript:app.js
app.post(‘/entry’, (req, res) => {
connection.query(
‘INSERT INTO tbl_items (name) VALUES (?)’,
[req.body.itemName],
(error, results) => {
connection.query(
‘SELECT * FROM tbl_items’,
(error, results) => {
res.render(‘index.ejs’, {items: results});
}
);
}
);
});
“`

###UPDATE

“`javascript:app.js
app.post(‘/update/:id’, (req,

元記事を表示

【mac】nodeのバージョンが変わらない

この記事は、nodebrewでインストールしたけど、nodeのバージョンが切り替わらない人向けに書かれています。

##結論
homebrewでインストールされているか、
nodebrewでインストールされているか問題だった。
zshにnodebrewのパスを通すことでnodeのバージョンが切り替わるようになる。

##経緯
node.jsの安定版が更新されていたので、確認した。
[Node.js Releases](https://nodejs.org/en/about/releases/)
2020/12/22現在、安定版は14.15.3 Fermium

“`
$ node -v
v12.18.4

$ nodebrew ls-remote
なんかいっぱいバージョンが出る。

$ nodebrew install-binary v14.15.3
Fetching: https://nodejs.org/dist/v14.15.3/node-v14.15.3-darwin-x64.tar.gz
###########################################

元記事を表示

Node.js&log4jsのログ管理についてあれこれ

Node.jsでlog4jsを使ってログ出力する場合の、ログ管理に関する検証記録。
思いついたことを追記していく予定。

# log4jsでログを出力するサンプルアプリを作る

検証用に、log4jsでログを出力するサンプルアプリを作る。

1.Docker環境で以下を実行し、node.jsコンテナを起動する。

“`
# docker run -it –rm –name app node bash
“`

2.コンテナのbashプロンプトで以下を実行し、環境を準備する。

“`
# mkdir app
# cd app
# npm install express log4js
# apt-get update
# apt-get install -y vim curl
“`

3.viでapp.jsというファイルを以下内容で作る。

“`javascript:app.js
var express = require(“express”);
var app = express();

var log4js = require(“log4js”);
log4js.confi

元記事を表示

プロジェクトの設定ファイル使い回しを支える技術

私はQiitaや[ブログ](https://blog.ojisan.io) に記事を書くときは、なるべく動くサンプルコードを提示するようにしています。そのため記事を書くたびにサンプルコードが増えていき、それを管理しているレポジトリも増えました。

FYI: https://github.com/ojisan-toybox

レポジトリを作る頻度はかなり高いのですが、作るたびに環境構築に時間がかかってしまっており、なるべく早くプロジェクトの環境構築を済ませる方法を考えています。扱う分野によっては儀式的な設定をたくさんする必要があり、毎回セットアップするのは大変です。そこで既存プロジェクトからコピペするわけですが、どのプロジェクトがどの技術で作られていたかは覚えておらず、どれをコピペしたらいいかよくわからなくなりました。そういった環境構築のためのコピペを **労力のかからないシンプルな方法で** 少し効率的にする方法を紹介します。

## template を作成しておく

素早く環境を作る方法として、一つにはGitHubのtemplateを使う方法があります。GitHubにあらかじめテ

元記事を表示

【Node.js 同期と非同期とアンチパターン】

ここでは非同期処理と同期処理の実例から考えるよくあるアンチパターンについて、理解が深まることで他の仕組みの使い所までわかればいいなと思う。

・非同期処理と同期処理の例
・コールバックを引数に持つ関数の例
・実際の処理と問題点
・解決方法

【非同期処理と同期処理の例】

まずは、以下のように簡単に同期処理を非同期処理にすることができる。

出力結果が入れ替わることがわかる。

“`jsx
const check = true

const syncCheck = (check) => {
console.log(check)
}
syncCheck(check)
console.log(“結果”)
// true
// 結果

// これを非同期にする
const asyncCheck = (check) => {
setTimeout(() => {
console.log(check)
},1000)
}
asyncCheck(check)
console.log(“結果”)
// 結果
// true
“`

このように関数内の処理は

元記事を表示

飲食店を応援したい!テイクアウト仕組みの構築&LINEで注文状況を照会

#どんな事にチャレンジしたのか紹介
飲食店でのテイクアウトの自動化にチャレンジ
最近、LINEの勉強をしているという事で色々なコンサルの方から質問が来ます。
その流れで、飲食店のコンサルをされている方と最近テイクアウトの流れを一緒に考えているので、「オンライン注文をより便利なものに」を目標に、Firebaseを利用してどんな事が出来るのか試してみました。

今回私の考えた仕組み
1.LINEからもWEBからも予約が出来る
2.予約情報は一元管理されている
3.LINEで過去の予約状況を照会

上記の3工程
これをvue.js・node.js・Firebase・LINE Messaging APIを使って完全自動化!にチャレンジしました。

#完成品フロー
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/820683/b3741f1d-4740-2116-5879-4dae70c972dd.png)

webアプリ
![image.png](https://qiita-image-store

元記事を表示

Azure Translator を使ってみたいあなたへ-誰でもすぐに使える翻訳機能のすすめ-

# やったこと
今回は node.js を使って、Azure アカウントと node.js の実行環境さえあればこの記事をご覧の皆さんもなるべく簡単に動作を確認できるようにしてみました。

class としてサクッとお試しいただけるものを用意しましたので、他の機能とかに組み込むとかはある程度しやすい状態じゃないかなと思います。

## こんな人向け
– 翻訳系のサービスを触ってみたい
– Azure Translator API をサクッと試す/組み込んでみたい
– どういう入力に対してどういう出力がされるのか知りたい

## こういう人向けではないよ
– 既に Translator API を使ったことがあって、更なる学習をしたい
– 翻訳機能を使った超絶素晴らしいシステムの話を聴きたい

# Azure Translator とは
Azure Translator とはザックリというと、翻訳だとか辞書検索だとかを行う Azure のサービスです。API がいくつか存在していて、チュートリアルも色々とあります。

[Translator サービスとは](https://docs.m

元記事を表示

node.jsで最高で最低な自動化ライブラリを作った。

# 概要
ターミナルで重い処理走らせて、ネットサーフィンしてたら、ターミナルの処理が終わってるのに気づかなかったって事よくありますよね(えっ)

こんな時に使える最低なライブラリをnode.jsで作成しました。

名前はtinntinn
下ネタではないです。
それが証拠にnpmライブラリとして配布出来ました。

使い方は簡単。ターミナルで
yarn add global tinntinn
でインストールし、
tinntinn
とターミナルに打つとベルがチンチンなります。

つまりbashで
‘何か重い処理’ && tintinn
とすれば、処理が終わった瞬間に音で気づけるって訳です。

以上。最低な自作ライブラリtinntinnの紹介でした。
自作したOSSの中で今、一番役に立っています笑

注意: 一部mac osでは音が鳴らないようです。

元記事を表示

M1 Macでpuppeteerを動かす方法(2020年12月21日時点)

# 動作環境
Mac Book Air 2020 M1
macOS Big Sur 11.0

# エラー内容
[ヘッドレス Chrome Node API 「Puppeteer」 – Qiita](https://qiita.com/bezeklik/items/c6448d50ff0efb45829e)を参考にpuppeteerを動かしてみようとした時に下記コマンドが arm64ではエラーが出たのでその対処方法を書きます。

“`zsh
yarn add puppeteer
“`

“`zsh
buzzword111@buzzword111-MacBook-Air Puppeteer % yarn add puppeteer
yarn add v1.22.10
info No lockfile found.
[1/4] ? Resolving packages…
[2/4] ? Fetching packages…
[3/4] ? Linking dependencies…
[4/4] ? Building fresh packages…
error

元記事を表示

OTHERカテゴリの最新記事