问题描述
发送ajax请求得到返回的链接,跳转这个链接后显示{“msg”:“referer”=XXXXX}
问题出现的环境背景及自己尝试过哪些方法
用了好几种方法,window.open、location.href、拿到链接拼接到a标签的href里,第一次打开都出现{"msg":"referer"=http://10.16.202.55/webmail/static/se.....,"result":"csrf error"}这个问题,重新刷新就显示正常,拿这个链接去别的页面打开也显示正常,实在找不到相关的处理方法了。
相关代码
window.setTimeout(function () {
var readMailfrmDoc = top.document.getElementById(
"ifrmReadmail_Content_readMail" + mid
).contentWindow.document;
var gMain = parent.gMain
var url = gMain.vLink
jQuery(readMailfrmDoc).find('.wps-preview').on('click', function () {
var adPopup = window.open('about:blank')
var referrer = url
jQuery.ajax({
url: url,
type: 'GET',
dataType: 'JSON',
success: function (res) {
if (res.code == 'S_OK') {
var newLink = res.var
adPopup.blur();
adPopup.opener.focus();
adPopup.location.href = newLink
} else {
alert('无法获取预览链接')
}
}
})
})
}, 0);
你期待的结果是什么?实际看到的错误信息又是什么?
希望跳转以后打开的页面显示正常
那不是有提示吗?csrf 错误了。应该有其他的地方把 token 消费了。