AXCWG 2 月之前
父節點
當前提交
b0a31b823f
共有 1 個文件被更改,包括 37 次插入34 次删除
  1. 37 34
      main.js

+ 37 - 34
main.js

@@ -457,54 +457,57 @@ app.options('/submit', function (req, res) {
 
 
 app.post('/search_api', async function (req, res) {
-    req.body.searchStr = req.body.searchStr.trim();
-    db.execute("SELECT uuid, song_name, album_name, artist, kind FROM instrunet_entry WHERE song_name like ? or album_name like ? or artist like ?", [`%${req.body.searchStr}%`, `%${req.body.searchStr}%`, `%${req.body.searchStr}%`], async (err, rowsO) => {
-        if (err) {
-            console.log(err)
-        }
-        db.execute("SELECT uuid, song_name, album_name, artist, kind FROM instrunet_entry WHERE song_name like ? or album_name like ? or artist like ?", [`%${await converters2t.convertPromise(req.body.searchStr)}%`, `%${await converters2t.convertPromise(req.body.searchStr)}%`, `%${await converters2t.convertPromise(req.body.searchStr)}%`], async (err, rowsT) => {
+    if(req.body.searchStr){
+        req.body.searchStr = req.body.searchStr.trim();
+        db.execute("SELECT uuid, song_name, album_name, artist, kind FROM instrunet_entry WHERE song_name like ? or album_name like ? or artist like ?", [`%${req.body.searchStr}%`, `%${req.body.searchStr}%`, `%${req.body.searchStr}%`], async (err, rowsO) => {
             if (err) {
                 console.log(err)
             }
-            db.execute("SELECT uuid, song_name, album_name, artist, kind FROM instrunet_entry WHERE song_name like ? or album_name like ? or artist like ?", [`%${await convertert2s.convertPromise(req.body.searchStr)}%`, `%${await convertert2s.convertPromise(req.body.searchStr)}%`, `%${await convertert2s.convertPromise(req.body.searchStr)}%`], (err, rowsS) => {
+            db.execute("SELECT uuid, song_name, album_name, artist, kind FROM instrunet_entry WHERE song_name like ? or album_name like ? or artist like ?", [`%${await converters2t.convertPromise(req.body.searchStr)}%`, `%${await converters2t.convertPromise(req.body.searchStr)}%`, `%${await converters2t.convertPromise(req.body.searchStr)}%`], async (err, rowsT) => {
                 if (err) {
                     console.log(err)
                 }
-                try {
-                    let prepare = [];
+                db.execute("SELECT uuid, song_name, album_name, artist, kind FROM instrunet_entry WHERE song_name like ? or album_name like ? or artist like ?", [`%${await convertert2s.convertPromise(req.body.searchStr)}%`, `%${await convertert2s.convertPromise(req.body.searchStr)}%`, `%${await convertert2s.convertPromise(req.body.searchStr)}%`], (err, rowsS) => {
+                    if (err) {
+                        console.log(err)
+                    }
+                    try {
+                        let prepare = [];
 
-                    rowsT.forEach(row => {
-                        prepare = prepare.concat(row);
-                    })
-                    rowsS.forEach(row => {
-                        if (JSON.stringify(prepare).indexOf(JSON.stringify(row)) === -1) {
-                            prepare = prepare.concat(row);
-                        }
-                    })
-                    rowsO.forEach((row) => {
-                        if (JSON.stringify(prepare).indexOf(JSON.stringify(row)) === -1) {
+                        rowsT.forEach(row => {
                             prepare = prepare.concat(row);
+                        })
+                        rowsS.forEach(row => {
+                            if (JSON.stringify(prepare).indexOf(JSON.stringify(row)) === -1) {
+                                prepare = prepare.concat(row);
+                            }
+                        })
+                        rowsO.forEach((row) => {
+                            if (JSON.stringify(prepare).indexOf(JSON.stringify(row)) === -1) {
+                                prepare = prepare.concat(row);
+                            }
+                        })
+                        for (let obj of prepare) {
+                            obj.stroke = obj.song_name[0].stroke() // Problematic as shit. Do not use.
+                            obj.spell = obj.song_name.spell()
                         }
-                    })
-                    for (let obj of prepare) {
-                        obj.stroke = obj.song_name[0].stroke() // Problematic as shit. Do not use.
-                        obj.spell = obj.song_name.spell()
-                    }
-                    sortArray(prepare, {
-                        by: 'spell'
-                    })
+                        sortArray(prepare, {
+                            by: 'spell'
+                        })
 
-                    res.header("Access-Control-Allow-Origin", "*");
+                        res.header("Access-Control-Allow-Origin", "*");
 
-                    res.json(prepare);
+                        res.json(prepare);
 
 
-                } catch (e) {
-                    console.log(e)
-                }
-            });
+                    } catch (e) {
+                        console.log(e)
+                    }
+                });
+            })
         })
-    })
+    }
+
 
 
 })