中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue使用jsonp抓取qq音樂數據的方法

發布時間:2020-09-23 06:34:14 來源:腳本之家 閱讀:197 作者:control_T 欄目:web開發

1、安裝jsonp

npm install jsonp

2、創建jsonp.js文件,內容如下:

import originJSONP from 'jsonp'
/** * 封裝jsonp
 * @param {*} url 原始的jsonp第一個參數是url,第二個參數是option,這里為了比較好寫參數做了下封裝
 * @param {obj} data 參數
 * @param {*} option jsonp的option
 */
export default function jsonp (url, data, option) {
 // 如果url沒有?就加一個?拼接
 url += (url.indexOf('?') < 0 ? '?' : '&') + param(data)
 return new Promise((resolve, reject) => {
  // 原始jsonp的三個參數,url、option、回調函數
  originJSONP(url, option, (err, data) => {
   // 類似node的設計,如果err是null,表示成功,data是后端返回的數據
   if (!err) {
    resolve(data)
   } else {
    reject(err)
   }
  })
 })
}
export function param (data) {
 let url = ''
 for (var k in data) {
  let value = data[k] !== undefined ? data[k] : ''
  url += '&' + k + '=' + encodeURIComponent(value)
 }
 return url ? url.substring(1) : ''
}

3、創建confiig.js文件,內容如下:

// 用于存放公共數據
export const commonParams = {
 g_tk: 5381,
 format: 'json',
 inCharset: 'utf - 8',
 outCharset: 'utf - 8',
 notice: 0
}
export const options = {
 param: 'jsonpCallback'
}
export const ERR_OK = 0

3、創建recommend.js文件,內容如下:

import jsonp from './jsonp'
import { commonParams, options } from './config'
export function getRecommend () {
 const url = 'https://c.y.qq.com/musichall/fcgi-bin/fcg_yqqhomepagerecommend.fcg'
 const data = Object.assign({}, commonParams, {
  platform: 'h6', uin: 0, needNewCode: 1
 })
 // 這里返回一個promise對象
 return jsonp(url, data, options)
}

4、在組件中使用,如musicHall.vue中

<script>
import {getRecommend} from '../api/recommend.js'
import {ERR_OK} from '../api/config.js'
export default {
 mounted () {
  //在created中也可
  this._getRecommend()
 },
 methods: {
  _getRecommend () {
   getRecommend().then((res) => {
    if (res.code === ERR_OK) {
     console.log(res.data.slider)
    }
   })
  }
 }
}
</script>

5、總結

  • Object.assign方法用于對象的合并,將源對象(source)的所有可枚舉屬性,復制到目標對象(target)
  • Object.assign(target, source1, source2)
  • encodeURIComponent(URIstring)函數可把字符串作為 URI 組件進行編碼。 URIstring 必需。一個字符串,含有 URI 組件或其他要編碼的文本。
  • substring()方法用于提取字符串中介于兩個指定下標之間的字符。
  • stringObject.substring(start,stop)包括 start 處的字符,但不包括 stop 處的字符。不接受負的參數。

總結

以上所述是小編給大家介紹的vue使用jsonp抓取qq音樂數據的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

革吉县| 伊宁市| 西青区| 故城县| 雷山县| 德保县| 静安区| 五莲县| 河南省| 稻城县| 梓潼县| 股票| 司法| 大厂| 姚安县| 峨眉山市| 德钦县| 兴山县| 准格尔旗| 石柱| 垦利县| 京山县| 永年县| 那坡县| 寻乌县| 阿荣旗| 花垣县| 巴楚县| 洛宁县| 新化县| 綦江县| 旌德县| 淅川县| 长顺县| 涿州市| 张北县| 洮南市| 马山县| 邹平县| 桐柏县| 柳河县|