home.js 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. import request from '@/utils/request'
  2. import md5 from 'crypto-js/md5'
  3. import {
  4. baseUrl
  5. }
  6. from '@/api/baseurl'
  7. // 查询轮播图列表
  8. export function getHomePageDataList() {
  9. return request({
  10. url: baseUrl + `/student/applet/homePage/getHomePageDataList`,
  11. method: 'get'
  12. })
  13. }
  14. //拼多多密钥计算
  15. function calcAuth(params, client_secret) {
  16. var arr = []
  17. Object.keys(params).sort().forEach((key) => {
  18. arr.push(key + params[key])
  19. })
  20. arr[0] = client_secret + arr[0]
  21. arr[arr.length - 1] += client_secret
  22. return md5(arr.join('')).toString().toUpperCase()
  23. }
  24. // 查询轮播图列表
  25. export function getPDD() {
  26. let params = {
  27. type: 'pdd.ddk.goods.recommend.get',
  28. data_type: 'JSON',
  29. client_id: 'fa0f2debb5b0444b9719919d7b8204d1',
  30. pid: '1642187_203462988',
  31. timestamp: new Date().getTime().toString().slice(0, 10),
  32. limit: 6
  33. }
  34. let client_secret = '3305b6bb37252495848e67fd991134651e308495'
  35. params.sign = calcAuth(params, client_secret)
  36. return request({
  37. url: `https://gw-api.pinduoduo.com/api/router`,
  38. method: 'get',
  39. params
  40. })
  41. }
  42. // 查询小程序跳转参数
  43. export async function getPddWxData() {
  44. let params = {
  45. type: 'pdd.ddk.goods.promotion.url.generate',
  46. data_type: 'JSON',
  47. client_id: 'fa0f2debb5b0444b9719919d7b8204d1',
  48. p_id: '1642187_203462988',
  49. timestamp: new Date().getTime().toString().slice(0, 10),
  50. generate_we_app: true
  51. }
  52. let getPDDRes = await getPDD()
  53. params.search_id = getPDDRes.goods_basic_detail_response.list[0].search_id
  54. let arr = '['
  55. getPDDRes.goods_basic_detail_response.list.map((val) => {
  56. arr += '"' + val.goods_sign + '",'
  57. })
  58. params.goods_sign_list = arr.slice(0, -1) + ']'
  59. let client_secret = '3305b6bb37252495848e67fd991134651e308495'
  60. params.sign = calcAuth(params, client_secret)
  61. let wxDataRes = await request({
  62. url: `https://gw-api.pinduoduo.com/api/router`,
  63. method: 'get',
  64. params
  65. })
  66. let dataArr = []
  67. getPDDRes.goods_basic_detail_response.list.map((val, index) => {
  68. val.we_app_info = wxDataRes.goods_promotion_url_generate_response.goods_promotion_url_list[index].we_app_info
  69. })
  70. return getPDDRes.goods_basic_detail_response.list
  71. }