base.js 844 B

12345678910111213141516171819202122232425262728293031323334353637
  1. 'use strict';
  2. const request = require('superagent');
  3. const Service = require('egg').Service;
  4. class BaseService extends Service {
  5. /*
  6. * ipc call
  7. */
  8. async ipcCall(method = '', data = {}) {
  9. if (!method) {
  10. return 'Method does not exist';
  11. }
  12. let result = {
  13. err: null,
  14. data: null
  15. };
  16. const port = this.service.storage.getElectronIPCPort();
  17. const url = 'localhost:' + port + '/send';
  18. try {
  19. const response = await request.post(url)
  20. .send({ cmd: method, data: data })
  21. .set('accept', 'json');
  22. result = JSON.parse(response.text);
  23. } catch (err) {
  24. ELog.error('[base] [ipcCall] request error:', err);
  25. result.err = 'request err';
  26. }
  27. ELog.error('[base] [ipcCall] result:', result);
  28. return result;
  29. }
  30. }
  31. module.exports = BaseService;