appsecret.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import Vue from 'vue'
  2. import md5 from './md5.js';
  3. import App from '@/App.vue'
  4. export function getSign(params, timestamp) {
  5. var relurt = '';
  6. if (typeof params == "string") {
  7. relurt = paramsStrSort(params, timestamp);
  8. } else if (typeof params == "object") {
  9. var relurt = jsonSort(params);
  10. relurt = paramsStrSort(relurt, timestamp);
  11. }
  12. return relurt;
  13. }
  14. export function paramsStrSort(paramsStr, timestamp) {
  15. console.log('paramsStr',paramsStr)
  16. let author = Vue.prototype.$author;
  17. let sp_paramsStr = paramsStr.split('&')
  18. let newParamsStr = []
  19. for (var i = 0; i < sp_paramsStr.length; i++) {
  20. if (sp_paramsStr[i] != '' && sp_paramsStr[i] != 'null' && sp_paramsStr[i] != 'undefined') {
  21. newParamsStr.push(sp_paramsStr[i])
  22. }
  23. }
  24. newParamsStr = newParamsStr.join('&')
  25. var newUrl = newParamsStr + '@' + timestamp + '@' + author.authkey;
  26. return md5(newUrl);
  27. }
  28. export function jsonSort(jsonObj) {
  29. let arr = [];
  30. for (var key in jsonObj) {
  31. if (jsonObj[key] != undefined)
  32. arr.push(key);
  33. }
  34. arr.sort();
  35. let str = '';
  36. for (var i in arr) {
  37. str += jsonObj[arr[i]] + "&"
  38. }
  39. const relurt = str.substr(0, str.length - 1)
  40. return relurt;
  41. }