Foxtable(狐表)用户栏目专家坐堂 → 变量值,前面有值,后面为空


  共有2033人关注过本帖平板打印复制链接

主题:变量值,前面有值,后面为空

帅哥哟,离线,有人找我吗?
zhangjian222200
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1536 积分:10849 威望:0 精华:0 注册:2016/9/12 11:18:00
变量值,前面有值,后面为空  发帖心情 Post By:2018/11/3 20:23:00 [只看该作者]

如题:
        Case "456.htm"  '网页简单授权
            Dim wangzhi As String '定义,网址
            For Each key As String In e.GetValues.Keys '接受获取openid成功后,转向的网页地址
                If key = "yemian" Then  '网址页面
                    wangzhi = e.GetValues(key)
msgbox("想要进入的网址=" & wangzhi)  ’这里能够正确获得变量wangzhi的值
                End If
            Next
            Dim OpenID As String
            Dim sb As New StringBuilder
            sb.AppendLine("<meta name='viewport' c>")
            If e.GetValues.ContainsKey("code") Then '如果通过授权链接跳转而来,就根据传递过来的code参数调用接口,获取用户的OpenID
                Dim ul As String  = "https://api.weixin.qq.com/sns/oauth2/access_token?appid={0}&secret={1}&code={2}&grant_type=authorization_code"
                ul = CExp(ul,"这里暂时删除","这里暂时删除",e.GetValues("code")) '这是填写自己的appid|appsecret
                Dim hc As new HttpClient(ul)
                Dim jo As JObject = JObject.Parse(hc.GetData)
                If jo("openid") IsNot Nothing Then
                    OpenID = jo("openid")
                    wb.AppendCookie("openid",OpenID,31680) '22天
                End If
            Else
                OpenId =  e.Cookies("openid") '否则从cookie中提取openid
            End If
            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.123.com/456.htm")
                ul1 = CExp(ul1,"这里暂时删除",ul2,"123")
                sb.Append("<meta http-equiv='Refresh' c>") '跳转到授权链接
                e.WriteString(sb.ToString)
                Return
            End If
            If e.GetValues.ContainsKey("code") = False Then 
                sb.AppendLine("获取openid失败")
            Else
msgbox("网址合成前=" & wangzhi)  ’这里获得变量wangzhi的值为
                wangzhi = wangzhi & ".htm"
msgbox("网址合成后=" & wangzhi)  ’这里获得变量wangzhi的值为
                w b.Insert HTML("<meta http -equiv='Re fresh' con tent='0; u rl=/" & wangzhi & "'>") '因为wangzhi =“”这里不能跳转网页
                e.WriteString(wb.Build) '生成网页
                Return
            End If
            e.WriteString(sb.ToString)
            Return

[此贴子已经被作者于2018/11/14 9:38:39编辑过]

 回到顶部