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

Node.js関連のことを調べてみた2021年03月24日
目次

Firestore: Reference型をJSONにするときの挙動を変える

#前置き

例えば以下のようなデータを**Functionsで**Firestoreのドキュメント`users/12345`に入れたとする.

“`json
{
“display_name”: String,

“userDetail”: Reference
}
“`

Functionsでこのデータを取ってきてJSONでクライアントに返すAPIを作る(`error()`とか`success()`は別で作ってあるって言う体で…).

“`JavaScript
app.get(“/users/:id”, async (req, res, next) => {
const users = await db.doc(`accounts/${req.params.id}`).get();
if (!users.exists) {
error(res, 404, “users_created”, “You’ve not created first user.”);
return;
}
succ

元記事を表示

IBM CloudでNode.jsアプリケーションをデプロイするまでの流れ

IBM Cloudを使ってみようと思い触ってみたので主に自分用に残します。

終わってみるとそこまでハマる感じではないと思いますが、僕はハマったところがありました苦笑

## 1. Web上の管理画面側の設定

### アカウントの作成

ライトアカウントという無料で作れるアカウントがあり、クレジットカード登録無しで登録できます。

> https://www.ibm.com/jp-ja/cloud
> ![スクリーンショット 2021-03-24 1.47.58.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/35387/b86d9ff3-aa79-c9f8-5ff1-11ebb6ef1b78.png “スクリーンショット 2021-03-24 1.47.58.png”)

アカウント登録をしていきましょう。

### アプリケーション作成まで

AWSやAzure、GCPなどと同様にIBM Cloudは色々なサービスの集合体の名称です。 今回はCloud Foundryというサービスを使っていきま

元記事を表示

express-sessionをMongodbで。

#初めに
今回の記事は対して裏取りをしておりませんので憶測で物をいうことが多いと思います。気になりすぎて夜も眠れネェヨクソが!という方は”フッザケンじゃねぇよ!”を接頭辞にコメントを寄せてもらえればと思います。

#connect-mongo
バージョンがアップしたのかどうなのかこちらのモジュールを日本語の記事を参考に使おうと思えば使えませんでした。というわけで、[公式のページ](https://www.npmjs.com/package/connect-mongo#usage)を参考にちょこっとだけ覚書していきます。解説はしません。というかできません。(まだべんきょうちゅー)

“`node.js
var session = require(‘express-session’);
var MongoStore = require(‘connect-mongo’)(session);

⇓⇓⇓

var session = require(‘express-session’);
var MongoStore = require(‘connect-mongo’);
“`
上のようにし

元記事を表示

Jest –watch Error: EMFILE: too many open files, watch

急に`jest –watch`ができなくなったので、調べてみた。

## 現象
“`console
❯ yarn test:watch
yarn run v1.22.10
$ cross-env NODE_ENV=test jest –config=jest.config.json –watch
2021-03-23 20:35 node[59503] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-22)
2021-03-23 20:35 node[59503] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-22)
2021-03-23 20:35 node[59503] (FSEvents.framework) FSEventStreamStart: register_

元記事を表示

IBM CloudのCloud Foundryデプロイの無料枠のメモリ制限

IBM Cloudを試してみてます。

無料枠を使って試してましたが2個目のアプリケーションのデプロイを試そうとしたら下記エラーでした。

`You have exceeded your organization’s memory limit: app requested more memory than available`

無料枠の制限を超えたようですね。

“`bash
$ ibmcloud cf push
‘cf push’ を起動しています…

nobisuke@xxxx.xxx.xxx としてマニフェストから組織 n0bisuke / スペース dev にプッシュしています…
マニフェスト・ファイル /Users/n0bisuke/playground/get-started-node/manifest.yml を使用しています
アプリ情報を取得しています…
これらの属性でアプリを作成しています…
+ 名前: n0bisuke-testapp2
パス: /Users/n0bisuke/playground/get-s

元記事を表示

git mv で expressアプリケーションのディレクトリを移動しようとしたらpermission deniedでつまづいた話

## 問題
expressアプリケーションのディレクトリ構成を変更するため、
`git mv`でディレクトリを移動しようしたが
`permission denied`により移動できなかった。
パーミッションを確認したが問題はなかった。

## 解決方法
node_modulesを含むディレクトリを`git mv`で移動しようとすると
`permission denied`エラーになるため、
一度node_modulesを削除してから`git mv`で移動する。
最後に`yarn install`でnode_modulesを復元する。

## くわしく

“`
.
├── express_nextjs
│ └── app
│ ├── express
│ │ ├── node_modules
│ │ └── その他
│ └── Dockerfile

└── その他
“`

“`
.
├─ app
│ ├── express
│ │ ├── node_modules
│ │

元記事を表示

Alexaスキル開発チュートリアル(AWS Lamda, node.js)

# Alexaスキル開発チュートリアル(AWS Lamda, node.js)
個人で開発した、Alexaスキル開発チュートリアルを記載します。

**今回は自分の目標設定をAlexaに記憶させて、次回起動時に目標期限を自動で算出して教えてくれるAlexaスキルを開発してみようと思います。**

### 完成イメージ

“`
◼︎ 初回起動時
(自分)アレクサ、目標リマインダーを開いて
(Alexa)こんにちは、目標リマインダーへようこそ。目標達成希望日時を教えてください。
(自分)2020年10月9日
(Alexa)ありがとうございます。目標達成日時は2020年10月9日ですね。

◼︎ 次回起動時
(自分)アレクサ、目標リマインダー
(Alexa)おかえりなさい、次の目標達成日時まで1年、残り12日です。目標達成に向けて本日も頑張りましょう
“`

### 前提知識
“`
1. AWS Lambdaについての最低限の知識
2. JavsaScriptについての最低限の知識
3. Alexa(スマートスピーカー)についての最低限の知識
“`

## STEP1 「ログイン」

元記事を表示

Beginner’s Series to: Node.js – 今から始める Node.js

新型コロナウイルスによるパンデミックが始まってかれこれ1年ちょっとが経過しましたが、皆さんいかがお過ごしでしょうか。

私はサンフランシスコに住んでいるのですが、もうずっと WFH (Working from home) 生活でオフィスのフリー・フードやドリンクが懐かしいというか、遠い昔のような気さえします。以前まで通っていたテック系企業が密集するオフィス街は今はまるでゴーストタウンのようになっています。本当に以前のような活気が戻ってくるのかはわかりません。

## 初心者向け Node.js 動画シリーズの日本語版を作ってみた

さて、私は猫 x2 ??‍⬛ に邪魔されつつ、この狭い自宅で毎日仕事をしているわけですが、時間がフレキシブルになった分、自由時間も多いので、髪を変な色に染めたりしていたのですが、もっと有意義なことをしたかったこともあり、マイクロソフトの同僚たちがやっていた [**Beginner’s Series to: Node.js**](https://channel9.msdn.com/Series/Beginners-Series-to-NodeJS) プロジェク

元記事を表示

TypeScript + express-graphql + TypeORM on Node.js ( for MySQL ) 環境を構築したった

# はじめに

はじめまして。突然ですが、[GraphQL](https://graphql.org/)、めちゃくちゃ良い技術です。
Rails に載った GraphQL を業務で使ってますが、フロントエンド開発がフッ軽になります。

もっと GraphQL に詳しくなりたい。でも、現在、フロントエンドエンジニアとして勤務中の私には、実務で GraphQL を触ることができたとしても せいぜい Type をちょろっと修正するくらい。

そこで、趣味で書いてる Vue.js 製 WEB アプリの API に GraphQL を採用することにしました。
導入から API として動かすところまでを勉強がてら実装したので、せっかくだし最小限の構成をご紹介します。備忘録も兼ねて。

・・・Rails に対してのモチベーションが高くない ☺️ ので、今回は express に載せてます。

# 実際にやってみた

TypeScript 使ってますが、サンプルコードの中では ~~面倒臭いので~~ 厳密に取り扱っていない箇所があります。そーりー。

## 下準備

### package.json を

元記事を表示

Node.jsについて調べてみた

「JavaScript」の勉強をしているとターミナルにNode.jsに関して入力することがあったりしましたがそもそも「Nodeってなに?」と思ったので調べてみました。

その前に、JavaScriptとNodeについても簡単におさらいしてみます。

JavaScriptとは

元々はブラウザやHTMLページを操作するためのプログラミング言語として1995年に誕生。
当初はブラウザ間の互換性が低くて普及しませんでしたが、「Ajax」という機能が発明されてから人気が高まった。

“`Ajax“` とはJavaScriptとサーバーの通信を非同期に行い、動的なデータを一部だけ書き換える方法のことですが、詳しくは下記参考
参考①:( http://pikawaka.com/word/ajax )

現在は殆どのサイトでJavaScriptは採用されており、画像を切り替えたり動かしたりする時にJavaScriptは書かれている。

特に重要な役割を端的に書くと下記3点になる。
“`・ブラウザで表示されているHTMLやCSSを書き換える。“`
“`・ブラウザに表示され

元記事を表示

discordjs/rpcを使ってPCのDiscordをスマホからミュートにしたい

## 動機
コロナ渦の大学生なので,ずっと家にいて暇です.常に仲間とDiscordのVCをつないで作業をしています.

ふとトイレに行くときに,PCのマイクをミュートにし忘れることがあります.
イヤホンはBluetoothなので音は聞こえているのですが,トイレとかキッチンに行った時とかにミュートにし忘れることがあって不便です.
そこで,離れたところからスマホでPCのDiscordをミュートにできたらと思っていたのですが,DiscordのRPCなAPIで実現できそうだったので試してみました.

## 環境
– ThinkPad X270
– Arch Linux
– Node.js v14.16.0
– [discord-rpc](https://github.com/discordjs/RPC) v3.2.0
– express
– Discord

Discordのアプリを,Node.jsで動くエージェントサーバーで操作する感じです.
Node.jsのサーバー上で,ExpressによるWebサーバーとDiscordRPCクライアントが走っています.
Webサーバーがリクエストを受け取

元記事を表示

初めてのLINEbot作成【Node.js + heroku】

# はじめに
Qiita初投稿になります
Node.jsによるLINEbot製作を行ってみたく、自学のために行った流れをまとめていきます
Node.js、npmのインストール、Herokuのアカウント登録などは省きます
成果物としては、「ありがとう」と送信すると、「どういたしまして」、それ以外は「こんにちは」と返ってくるLINEbotを制作します

#動作環境
・MacBook Pro (13-inch, 2019, Two Thunderbolt 3 ports)
・mac OS Catalina バージョン 10.15.7
・node v15.3.0
・npm 7.0.14
・git 2.23.0

# 目次

1. [LINE側の準備](#Chapter1)
1. [Node.js側の準備](#Chapter2)
1. [コードの作成](#Chapter3)
1. [応答テスト](#Chapter4)
1. [本番環境(heroku)にデプロイ](#Chapter5)
1. [参考文献](#reference)

OTHERカテゴリの最新記事