Redis + node/express で、jsonファイルのPOST送信と DB登録の例 #redis #node #javascript


■ 概要:

前のredisの関連となり。
node/expressで、jsonファイを File APIで読込み
redis のDB登録処理の例となります。


■ 環境

redis 4.0.9
node 14
ubuntu 18.04
node-redis
express

■ 前の、redis CRUD版は。こちら

https://note.com/knaka0209/n/n92c393a90f7b


■ 参考のコード


■ 登録

・ejs, File APIで、POST送信します
views/sorted_tasks/import_task.ejs

・API, /api_sorted_tasks/file_receive
main/routes/sorted_tasks.js

受信したPOSTデータのjsonデコード
 redis登録は、前回と同様な
 INCR + Sorated Sets型 + String型の、複雑な手順の登録

router.post('/file_receive', function(req, res, next) {
   let data = req.body
   var items = JSON.parse(data.data || '[]')
   var ret_arr = {ret:0, msg:""}
   client.on("error", function(error) {
       console.error(error);
       ret_arr.msg = error
       res.json(ret_arr);
   });  
//console.log( items )
   var ret = LibSortedTasks.add_items(client, items);
   var param = {"ret": ret };
   res.json(param);
});


■ ファイル容量エラー

json容量が起きい場合、express のHTTP 413 エラー
が出ましたので

app.js 修正で、回避できました。

app.use(express.urlencoded({ limit:'5mb' ,extended: false }));
app.use(express.json({ limit: '5mb', extended: true }));





この記事が気に入ったらサポートをしてみませんか?