ilhamdev commited on
Commit
461bb3f
·
verified ·
1 Parent(s): a46efb5

Update index.js

Browse files
Files changed (1) hide show
  1. index.js +34 -0
index.js CHANGED
@@ -1027,6 +1027,40 @@ return res.json({message: "Success", code: 200, data:data})
1027
  });
1028
  }
1029
  })
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1030
  .get('/ytsearch', async (req, res) => {
1031
  try {
1032
  let q = req.query.q || req.query.query;
 
1027
  });
1028
  }
1029
  })
1030
+ .get('/eval', async (req, res) => {
1031
+ const formatResponse = (response) => {
1032
+ try {
1033
+ return JSON.stringify(JSON.parse(response), null, 2);
1034
+ } catch {
1035
+ return util.format(response);
1036
+ }
1037
+ };
1038
+ let evalCmd = '';
1039
+ try {
1040
+ let q = req.query.q || req.query.query;
1041
+ if (!q) return res.json({ message: 'Input parameter q' });
1042
+ evalCmd = /await/i.test(q) ? eval('(async() => { ' + q + ' })()') : eval(q);
1043
+ } catch (e) {
1044
+ evalCmd = e;
1045
+ }
1046
+ new Promise((resolve, reject) => {
1047
+ try {
1048
+ resolve(evalCmd);
1049
+ } catch (err) {
1050
+ reject(err);
1051
+ }
1052
+ })
1053
+ ?.then(res =>{
1054
+ let result = formatResponse(res)
1055
+ return res.json({message: "Success", code: 200, data: result});
1056
+ })
1057
+ ?.catch(err => {
1058
+ return res.json({ message: "Internal Server Error",
1059
+ code: 500,
1060
+ message: formatResponse(err)
1061
+ });
1062
+ });
1063
+ })
1064
  .get('/ytsearch', async (req, res) => {
1065
  try {
1066
  let q = req.query.q || req.query.query;