代理方案; 需要自己制作代理服务器,适合服务器代码不可修改
所谓代理: j就是服务器之间没有同源策略限制 我们的客服端与自己的服务器可以设置cors,允许跨域 ,自己的服务器向其他服务器要东西 这叫做代理(中间商)
引入模块 用于在服务器上面发送http请求
//const http=require('http')
例如: 请求斗鱼的接口请求
//let dy= 'https://m.douyu.com/api/room/list?page=2&type=yz'
自己代理的
//请求的数据
app.get('/dy',(req,res)=>{
let url='http://m.douyu.com/api/room/list?page=2&type=yz'
http.get(url,data=>{
console.log(data)
let str=''
data.on('data',chunk=>(str +=chunk))
data.on('end',()=>res.send(JSON.parse(str)))
})
})
// let dy='http://localhost:3000/dy'
然后再发送请求,渲染到页面上
$.get(dy, data=>{
console.log(data)
let els=data.data.list.map(item => {
return `<div class="item">
<img src="${item.roomSrc}" alt=""/>
<div>${item.hn}</div>
<div>${item.nickname}</div>
<div>${item.roomName}</div>
</div>`
})
$('#douyu').empty().append(els)
})