If e.GetValues.ContainsKey("code") = False Then '如果授权失败,且不是通过授权链接跳转而来,那么就跳转到授权链接
Dim ul1 As String = "https://open.weixin.qq.com/connect/oauth2/authorize?appid={0}&redirect_uri={1}&response_type=code&scope=snsapi_base&state={2}#wechat_redirect"
Dim ul2 As String = UrlEncode("http://www.you******.com/wangyeshouquan.htm")
ul1 = CExp(ul1,"wxaa****",ul2,"123")
sb.Append("<meta http-equiv='Refresh' c />") '跳转到授权链接
e.WriteString(sb.ToString) ’这儿没有跳转链接,而只是把链接,展示出来
Return
End If
[此贴子已经被作者于2024/7/12 10:10:03编辑过]
1楼截图只是一个弹出的图层,不是一个页面呀。网页授权的用法只能用到页面里,无法用到弹窗里
let res = sendAjaxText(JSON.parse(localStorage.getItem("key2")).touser[1].toString(),"wangyeshouquan.htm","",false);
if (res.startsWith('获得数据成功') == false){
alert(res); ’懂了,问题,在这儿了。这是前端页面代码。怎么把这变成页面访问勒?
shouYe();
return false;
}
我试了以下几种方法,都不行location=res;
window.location=res;
window.location.href=res;
这些方法肯定都是可以的。只能说明这个项目的前端处理的逻辑有问题
'获得openid成功,返回数据 '这里,是ft返回数据的代码
e.WriteString("获得数据成功" & shuJv)
Return '必须的
'以下是前端js代码
let res = sendAjaxText(JSON.parse(localStorage.getItem("key2")).touser[1].toString(),"wangyeshouquan.htm","",false);
if (res.startsWith('<meta') == true){
jiaRuFuZhu(res); 这儿,调用另一个函数,执行第一次返回的重定向链接,成功
return;
}
if (res.startsWith('获得数据成功')){
alert("获得数据成功"); ’这儿,没有将这几个个弹窗显示,而是"获得数据成功",这几个字,孤零零地显示在页面左上角,没有任何ui元素 ’我需要这儿能弹窗,该怎么办?
let ary = res.split("|"); ’上面弹窗了,才能获得数据
// 存储数据到localStorage
localStorage.setItem("key2",ary[1]);
}
’重定向函数
function jiaRuFuZhu(x1){
// 打开文档流
document.open();
// 定义页面字符串
let code = "<!DOCTYPE html>\n";
code += " <html lang='zh-cmn-Hans'>\n";
code += " <head>\n";
code += " '" + x1 + "'\n";
code += " </head>\n";
code += " <body onload()'>\n";
code += " </body>\n";
code += " </html>\n";
document.write(code);
// 关闭文档流
document.close();
}