请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师哦 我实在看不出我这写的为啥报304 看着一样啊

singer.js如下:

import jsonp from 'common/js/jsonp'
import {commonParams, options} from './config'
// import axios from 'axios'
 
export function getSingerList() {
  const url = 'https://c.y.qq.com/v8/fcg-bin/v8.fcg'
  // const url = '/api/v8/fcg-bin/v8.fcg'
  
  const data = Object.assign({}, commonParams, {
    channel: 'singer',
    page: 'list',
    key: 'all_all_all',
    pagesize: 100,
    pagenum: 1,
    hostUin: 0,
    needNewCode: 0,
    platform: 'yqq'
  })

  return jsonp(url, data, options)
}

jsonp.js如下:

import originJSONP from 'jsonp'

export default function jsonp(url,data,option) {
	url += (url.indexOf('?')<0 ? '?':'&') + param(data)
	return new Promise((resolve, reject)=> {
		originJSONP(url, option, (err, data)=> {
			if(!err) {
				resolve(data)
			} else {
				reject(err)
			}
		})
	})
}

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):''
}

config.js如下:

export const commonParams = {
	g_tk: 1928093478,
	inCharset: 'utf-8',
	outCharset: 'utf-8',
	notice: 0,
	formate: 'jsonp'
}

export const options = {
	param: 'jsonpCallback'
}

export const ERR_OK = 0

正在回答 回答被采纳积分+3

1回答

ustbhuangyi 2019-03-21 13:48:22

你把请求的完整的 url 地址贴出来吧

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信