きっかけ
node.jsのモジュール使った簡単なAPIバッチを叩くスクリプトを作ったんだけど、どう実行したらいいんだ?ってなって調べた。
すでにプロジェクトがあるやつに対してやったので、package.jsonにスクリプトかかない方法で実行できないか探した。
環境
Chromium: 91.0.4472.164 Node.js: 14.16.0 V8: 9.1.269.39-electron.0 OS: Windows_NT x64 10.0.19043
サンプルソース
やったのは、voicevoxのAPIを叩きたいので、いろいろ調べた。
import fetch from 'node-fetch'; const response = await fetch('http://localhost:50021/audio_query?speaker=1', { method: 'POST', body: 'こんにちは、音声合成の世界へようこそ', }); console.log('===== response ====='); console.log(response); const data = await response.json(); console.log('===== response.json ====='); console.log(data); const response2 = await fetch('http://localhost:50021/synthesis?speaker=1', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: data, }); console.log('===== response2 ====='); console.log(response2);
実行方法
一番大事なところ
- mjsファイルとして作成する
- js→mjsにファイルの拡張子を蛙
--experimental-modules
オプションを付けて実行node --experimental-modules {mjsファイル}
で実行できる
参考サイト
node.js モジュール(ES Module)のimport/exportにハマる。 - かもメモ
感想
node
でjsファイルは何でも実行できると思っていた時期があった。
この日から、大丈夫になったはず。