今天渠道组,说广告在安卓手机360浏览器上显示不了,我就去排查这个问题,发现所有安卓浏览器还真看不到广告,本来以为是360浏览器屏蔽了,,但是另一个项目就没事,后来经过几个小时的不断alert断点调试下.终于找到了问题
let data = {
type: this.dataType,
qid: qid,
uid: recgid, // 用户ID
os: os,
readhistory: readUrl,
adnum: 4,
pgnum: this.pgnum[this.curPos],
adtype: 1236,
dspver: '1.0.1',
softtype: 'news',
softname: 'eastday_wapnews',
newstype: 'ad',
browser_type: my.GLOBAL.browserType || 'null',
pixel: pixel,
fr_url: my.GLOBAL.getReferrer() || 'null',
site: 'sport'
}
function makeJsonp(url, data) {
return $.ajax({
data: data,
url: url,
dataType: 'jsonp',
jsonp: 'jsonpcallback',
success: function(a){
alert(a)
},
error: function(jqXHR, textStatus){
alert(textStatus)
}
})
}
这是我用ajax传入的data数据
这个数据是用来获取公司dsp广告的
最终发现,有个adnum的命名,只要有这个字段就会报错,随意修改一下这个名字,加个字母少个字母报错都会消失,
经过多次尝试发现adcount也会报错,这个bug让我真的无语了,,不知道为什么出来的,希望遇到的同学下方可以留言,也可以自己去试试.