sdk.js 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. var router = require('koa-router')();
  2. var moralis = require('../model/moralis_sdk.js')
  3. var utils = require('../model/utils.js');
  4. var fernet = require('fernet');
  5. router.prefix('/sdk');
  6. /**
  7. * 获取代币价格
  8. * @param {*} ctx
  9. */
  10. async function getAllTotkenPrice(ctx) {
  11. console.log("body", typeof (ctx.request.body), ctx);
  12. const obj = ctx.request.body;
  13. console.log("obj", obj);
  14. if (obj.address != null && obj.chain != null) {
  15. await moralis.getTotkenPrice(obj.address, obj.chain).then((result) => {
  16. console.log('getTotkenPrice result:', result)
  17. ctx.body = result;
  18. })
  19. } else {
  20. ctx.body = utils.toJson(-1, null, "please check address or chain parameter is ok ? ");
  21. }
  22. }
  23. /**
  24. * 获取交易记录
  25. * @param {*} ctx
  26. */
  27. async function getTransfers(ctx) {
  28. console.log("body", ctx);
  29. const obj = ctx.request.body;
  30. console.log("obj", obj);
  31. if (!obj.chain)//默认 bsc 币安链
  32. obj.chain = 'bsc'
  33. await moralis.getTokenTransfers(obj).then((result) => {
  34. ctx.body = result;
  35. })
  36. }
  37. /**
  38. * 出金,入金交易
  39. * @param {*} ctx
  40. * @returns
  41. */
  42. async function transfer(ctx) {
  43. if (ctx.request == null || ctx.request.body == null) {
  44. ctx.body = utils.toJson(-1, null, "request error. ");
  45. return
  46. }
  47. const obj = ctx.request.body;
  48. await moralis.transfer(obj).then((result) => {
  49. ctx.body = result;
  50. });
  51. }
  52. async function getAllTokenWithdrawInfoLists(ctx) {
  53. if (ctx.request == null || ctx.request.body == null) {
  54. ctx.body = utils.toJson(-1, null, "request error. ");
  55. return
  56. }
  57. ctx.body = await moralis.getAllTokenWithdrawInfoLists(ctx);
  58. }
  59. //获取交易记录
  60. router.post('/getTransfers', getTransfers)
  61. // 获取所有代币价格
  62. router.post('/getAllTotkenPrice', getAllTotkenPrice)
  63. //归集 and 提现
  64. router.post('/transfer', transfer)
  65. //获取所有地址的所要消耗的最低提取费
  66. router.post('/getAllTokenWithdrawInfoLists', getAllTokenWithdrawInfoLists)
  67. async function crypto_test(ctx) {
  68. if (ctx.request == null || ctx.request.body == null) {
  69. ctx.body = utils.toJson(-1, null, "request error. ");
  70. return;
  71. }
  72. const obj = ctx.request.body;
  73. var key = obj.key;
  74. var message = obj.privateKey;
  75. //process.env.NODE_ENV
  76. console.log("NDK_HOME", process.env.NDK_HOME);
  77. var token = new fernet.Token({
  78. secret: 'MOGsyhYeY5gWohJGLYyr3TDa7EsUqQ715WF5GPiK0TY=',
  79. token: 'gAAAAABiYlOdvJbcNP8n3h0yT6QUTWLAOAHnL8cMRrU29PduZ5dh_aXC7YvKWwXTARN4YQBcVlnSX5oY-LcdGKWYn9yL0wD2KmnnTiLciYAyThdoMQIjcWcej8eNyFk3je0IUsXz6uQ11U5u6b9QltozL_bunKTdrT3g1i4_b9_dxU7cPlKPUIY=',
  80. ttl: 0
  81. })
  82. console.log(333, token)
  83. var message = token.decode();
  84. console.log("decrypt message:", message);
  85. ctx.body = {
  86. decrypt: message
  87. }
  88. }
  89. router.post('/crypto_test', crypto_test)
  90. module.exports = router;