Vue項(xiàng)目學(xué)習(xí)的過程中,在獲取QQ音樂推薦分類歌單數(shù)據(jù)的時(shí)候,按照老師的代碼配置如下:

image.png
組件中代碼:

image.png
此時(shí)啟動(dòng)的時(shí)候,會報(bào)如下錯(cuò)誤:

image.png
為什么會出現(xiàn)jp1未定義的情況呢?
于是進(jìn)行了各種百度:
發(fā)現(xiàn)也有其他人出現(xiàn)同種情況,至于回答里面的大神給出的解釋是:

image.png
于是,我按照這種方法去修改,在src/api/config的文件中,添加了
export const options1 = {
param: 'jsonpCallback',
prefix: 'playlistinfoCallback'
}
返回的時(shí)候修改成:
return jsonp(url, data, options1)
再次運(yùn)行的時(shí)候,果然,這個(gè)問題解決了!
但是,又出現(xiàn)了新的問題:
uncaught (in promise) typeerror: cannot read property '0' of undefined
到這個(gè)地方,我就很無語了!
我意識到錯(cuò)誤原因找錯(cuò)了,于是,我重新回到第一個(gè)問題的代碼,然后查看請求的數(shù)據(jù)結(jié)果:
{code: 0, subcode: 1, msg: "invalid referer"}
code:0
msg:"invalid referer"
subcode:1
__proto__:Object
在此百度了一下,原來{code: 0, subcode: 1, msg: "invalid referer"}
的意思是,需要偽裝一下referer。
于是,我開始做成后端代理的模式,先將代碼修改成如下:

image.png
在build/webpack.dev.conf文件中添加如下代碼:

image.png
重啟項(xiàng)目,運(yùn)行成功!