/***************************************************************
* *
* mui.ajax获取数据 *
* *
/***************************************************************/
var url = 'http://s.music.163.com/search/get/';
mui.ajax(url, {
data: {
'type': 1,
's': '喜欢你',
'limit': 10
},
dataType: 'json',
type: 'post',
timeout: 10000,
success: function(response) {
console.log(JSON.stringify(response))
},
error: function(xhr, type, errorThrown) {
console.log(type)
}
})
用segmentfault的有個mui教學練習的時候,在瀏覽器開啟總是報跨域的錯誤,是介面不能用了麼?還是其它原因
我找到原因了,因為我是瀏覽器打開的,這樣會跨域,如果拿到真機上面運行就不會出現跨域問題了
跨域錯誤那就是網易雲那邊不允許跨域請求.
你需要一個後台來轉發請求
我之前也遇到過這樣的問題,原因就是網易那邊不允許跨域請求。
這是網易雲的伺服器在返回你的請求中沒有
Access-Control-Allow-Origin
這個head字段,所以你的請求被瀏覽器砍了。兩種解決方案:
勒令網易雲音樂允許你發起請求的網站跨域,也就是讓他們修改伺服器設定。
在後端呼叫網易雲音樂API,不通過瀏覽器。
你也可用postman做測試。
如果你能忍痛看英文,這篇文章寫得非常詳盡了。
你如果只是練習的話可以關閉chrome對跨域請求的限制,這樣就沒有跨域問題了