老师 为啥我的接口没有返回值?

来源:13-2 编译打包-项目编译打包及node服务测试

阿J脚步

2020-08-16

图片描述
图片描述

写回答

4回答

ustbhuangyi

2020-08-17

getTopBanner 你后台路由请求的 QQ 那边的接口地址是什么,贴一下相关代码

0
9
ustbhuangyi
回复
阿J脚步
国外 ip 貌似被封的可能性大
2020-08-19
共9条回复

阿J脚步

提问者

2020-08-18

app.get('/api/getTopBanner', function (req, res) {
 console.log(1111)
 const url = 'https://u.y.qq.com/cgi-bin/musicu.fcg'
 const jumpPrefix = 'https://y.qq.com/n/yqq/album/'

 axios.get(url, {
   headers: {
     referer: 'https://u.y.qq.com/',
     host: 'u.y.qq.com'
   },
   params: req.query
 }).then((response) => {
   response = response.data
   if (response.code === 0) {
     const slider = []
     const content = response.focus.data && response.focus.data.content
     if (content) {
       for (let i = 0; i < content.length; i++) {
         const item = content[i]
         const sliderItem = {}
         sliderItem.id = item.id
         sliderItem.linkUrl = jumpPrefix + item.jump_info.url + '.html'
         sliderItem.picUrl = item.pic_info.url
         slider.push(sliderItem)
       }
     }
     res.json({
       code: 0,
       data: {
         slider
       }
     })
   } else {
     res.json(response)
   }
 }).catch((e) => {
   console.log(e)
 })
})

0
0

阿J脚步

提问者

2020-08-17

export function getRecommend () {

  // 线上环境地址,同学们根据自己的需要配置修改

  const url = debug ? '/api/getTopBanner' : 'http://www.tiaoyitiao.top/music/api/getTopBanner'


  const data = Object.assign({}, commonParams, {

    platform: 'yqq.json',

    hostUin: 0,

    needNewCode: 0,

    inCharset: 'utf8',

    format: 'json',

    '-': 'recom' + (Math.random() + '').replace('0.', ''),

    data: {

      'comm': { 'ct': 24 },

      'category': { 'method': 'get_hot_category', 'param': { 'qq': '' }, 'module': 'music.web_category_svr' },

      'recomPlaylist': {

        'method': 'get_hot_recommend',

        'param': { 'async': 1, 'cmd': 2 },

        'module': 'playlist.HotRecommendServer'

      },

      'playlist': {

        'method': 'get_playlist_by_category',

        'param': { 'id': 8, 'curPage': 1, 'size': 40, 'order': 5, 'titleid': 8 },

        'module': 'playlist.PlayListPlazaServer'

      },

      'new_song': { 'module': 'newsong.NewSongServer', 'method': 'get_new_song_info', 'param': { 'type': 5 } },

      'new_album': {

        'module': 'newalbum.NewAlbumServer',

        'method': 'get_new_album_info',

        'param': { 'area': 1, 'sin': 0, 'num': 10 }

      },

      'new_album_tag': { 'module': 'newalbum.NewAlbumServer', 'method': 'get_new_album_area', 'param': {} },

      'toplist': { 'module': 'musicToplist.ToplistInfoServer', 'method': 'GetAll', 'param': {} },

      'focus': { 'module': 'QQMusic.MusichallServer', 'method': 'GetFocus', 'param': {} }

    }

  })


  return axios.get(url, {

    params: data

  }).then((res) => {

    return res.data

  })

}


0
0

ustbhuangyi

2020-08-17

应该是你请求的参数不对吧,仔细核对一下请求参数

0
3
阿J脚步
和CSRF保护有关么
2020-08-18
共3条回复

Vue2.0高级应用教学实战,开发企业级移动端音乐Web App

Vue.js高级知识应用大集合,实战企业级APP,教你搞定组件化开发。

5432 学习 · 3804 问题

查看课程