获取网易云视频列表的数据时需要先登录再获取,并且获取的时候要携带cookie
cookie存在request中,需要从request中获取,但是request中并不是每一个请求都需要获取cookie,所以需要在login.js的请求时携带一个参数来标识他需要获取cookie
login.js

// 后端验证let result=await request('/login/cellphone',{phone,password,isLogin:true})

request.js中进行判断是否携带isLogin参数为true的参数,是的话就获取cookie进行存储,并且cookie需要添加在请求头中,请求头中当cookie有值的时候在请求头中获取并加上cookie,没有的时候需要设置为空,防止用户未登录的时候报错
request.js

import config from './config'
// 封装ajax请求功能函数
export default (url,data={},method='GET')=>{return new Promise((resolve,reject)=>{// 1.初始化promise状态为pending// 2.执行异步任务wx.request({url:config.host+url,data,method,header:{cookie:wx.getStorageSync('cookies')?wx.getStorageSync('cookies').toString():''},// 3.根据异步任务的结果修改promise的状态success:(res)=>{// console.log('请求成功',res)// 登录请求,将用户的cookie保存至本地if (data.isLogin) {wx.setStorageSync('cookies', res.cookies)}resolve(res.data) //修改promise状态为成功为resolved},fail:(err)=>{console.log('请求失败',err)reject(err) //修改promise状态为失败状态 rejected},})})
}

video.js

import request from '../../utils/request'
Page({/*** 页面的初始数据*/data: {videoGroupList:[], //导航标签数据navId:'', //导航标签的id标识videoList:[], //视频列表数据},/*** 生命周期函数--监听页面加载*/onLoad(options) {this.getVideoGroupList()},// 获取导航标签数据的功能函数async getVideoGroupList(){let result=await request('/video/group/list')// 更新videoGroupList的数据// slice splice(会影响原数组)this.setData({videoGroupList:result.data.slice(0,14),navId:result.data[0].id})this.getVideoList(this.data.navId)},// 获取视频列表数据的功能函数async getVideoList(navId){let videoListData=await request('/video/group',{id:navId})// console.log(videoListData)// 更新videoList状态数据let index=0// 若videoListData.data有值,使用map方法加工这个数组,给item添加一个唯一的id用于标识当前的item,注意加工完的item需要返回if (videoListData.datas) {let videoList=videoListData.datas.map(item=>{item.id=index++return item})this.setData({videoList})}},// 点击导航切换的回调changeNav(event){let navId=event.currentTarget.idthis.setData({navId:Number(navId)})// 获取最新的视频列表数据this.getVideoList(this.data.navId)},})

video.wxml

  <!-- 导航区域 --><scroll-view scroll-x="true" enable-flex="true" class="navScroll"><view class="navItem" wx:for="{{videoGroupList}}" wx:key="id"><view class="navContent {{navId===item.id ? 'active' : ''}}" bindtap="changeNav" id="{{item.id}}">{{item.name}}</view></view></scroll-view><!-- 视频列表区域 --><scroll-view><view class="videoItem" wx:for="{{videoList}}" wx:key="id"><video src="{{item.data.urlInfo.url}}"></video></view></scroll-view>

微信小程序网易云音乐获取视频列表数据(需要登录获取携带cookie)相关推荐

  1. 微信小程序网易云音乐播放界面

    微信小程序网易云 效果图 HTML JS CSS 效果图 HTML <view class="box"><!-- 毛玻璃 --><view class ...

  2. SSM+微信小程序网易云音乐设计与实现 毕业设计-附源码261620

    基于SSM微信小程序的网易云音乐 摘  要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,微信小程序 ...

  3. SSM+mysql+微信小程序网易云音乐设计与实现 毕业设计-附源码261620

    基于SSM微信小程序的网易云音乐 摘  要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,微信小程序 ...

  4. (附源码 )SSM+mysql+微信小程序网易云音乐设计与实现 毕业设计261620

    基于SSM微信小程序的网易云音乐 摘 要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,微信小程序的 ...

  5. 微信小程序网易云音乐设计与实现 毕业设计-附源码261620

    基于SSM微信小程序的网易云音乐 摘 要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,微信小程序的 ...

  6. (附源码)SSM+mysql+微信小程序网易云音乐设计与实现 毕业设计261620

    基于SSM微信小程序的网易云音乐 摘 要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,微信小程序的 ...

  7. 微信小程序网易云音乐视频播放切换的功能的实现

    需要使用bindplay事件 <video src="{{item.data.urlInfo.url}}" object-fit="cover" bind ...

  8. WeChat微信小程序网易云音乐播放链接方法

  9. 微信小程序网易云音乐轮播图右侧留白

    效果图 这个效果需要用到swiper里面的一个方法next-margin 使用如下: <swiper class="topListSwiper" next-margin='5 ...

  10. 微信小程序网悦新闻开发--视频模块开发(四)

    目录 微信小程序网悦新闻开发--功能介绍(一) 微信小程序网悦新闻开发--小程序配置(二) 微信小程序网悦新闻开发--首页模块开发(三) 微信小程序网悦新闻开发--视频模块开发(四) 微信小程序网悦新 ...

最新文章

  1. 微服务前端开发框架React-Admin
  2. Xilinx ISE 调用 ModelSim SE 库编译
  3. 不会玩电脑怎么学计算机,不会玩电脑怎么学
  4. windows10和ubuntu16.04双系统下时间不对的问题
  5. android横向多布局约束,Android约束布局中心水平对齐Textview和Imageview不工作
  6. 东南大学数字信号处理实验_数字与信号处理实验1 离散时间信号分析
  7. 比较好玩的动态添加网页元素
  8. linux scp 遇到空格
  9. JSON网络传输协议
  10. 树莓派-电视盒子-投影
  11. php同步登录,UCenter单点登录/同步登录/同步登出实例_PHP教程
  12. 自己拥有一台服务器可以做哪些很酷的事情
  13. SAP会计借贷(转载)
  14. cie1931 python绘制_科学网-gnuplot与CIE1931 XYZ三刺激值曲线-范学良的博文
  15. 用20门编程语言说生日快乐/我爱你
  16. 读书笔记《敏捷项目管理》第七章 定义产品愿景和产品路线图
  17. 古典问题(兔子生崽):有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?(输出前40个月即可)
  18. Linux下分割、合并PDF(pdftk)
  19. php中reset是什么意思,reset是什么意思
  20. python中关于axis=0和axis=1应该如何理解?

热门文章

  1. 使用OEM复制数据库
  2. Vcenter7部署3par ssmc
  3. 中国 vs 卡塔尔 一场幸运的比赛
  4. 美通企业日报 | 今年中国私家车行驶里程同比大降18%;缤客发布2020年八大旅行趋势...
  5. 紫书刷题记录 UVa297 四分树
  6. 美国拉斯维加斯游戏CRAPS(花旗骰)掷骰子的游戏的C语言版本
  7. 超女复活赛,明星大补考
  8. 谷歌chrome浏览器打不开网页,但是其他浏览器可以打开怎么办?
  9. 【C语言】用 1 分、5 分、10 分、25 分的硬币凑成任何给定的钱数 x,要求硬币的数目最少
  10. word 2016样式设置及样式集保存