在做微信开发的时候,会遇到这样的场景:一个公众号,会有多个业务:官网、论坛、商城等等

微信网页授权域名 目前最多可以填写两个!!!,那么问题来了?这应该怎么办?

答案就是: 做一个中转服务!

域名1: www.test.com

域名2: bbs.test.com

中转域名:zhongzhuan.test.com

(说明! 域名不一定非得是子域名!例如 www.baidu.com 也可以)

网上的教程大多数都是php的 C#的少之又少,现在我来给大家做一个,原理很简单,实现也很简单

话不多说,直接粘贴代码,简单的!

public class AuthController : Controller
{
//接受要跳转的url
public ActionResult Index(string redirectUri)  //redirectUri 要跳转的网页链接 例如 bbs.test.com 
{
if (string.IsNullOrWhiteSpace(redirectUri))
{
ViewBag.error = "跳转链接参数错误";
return View();
}
var gotoUri = "gotoRedirectUri=" + redirectUri;
var link = "http://zhongzhuan.test.com/Auth/AuthCode?" + gotoUri;
var uri = WxConfig.getCodeUri(link);
return Redirect(uri);
}
/// <summary>
/// 授权跳转到这里
/// </summary>
/// <param name="code">微信的code</param>
/// <param name="state">微信的state</param>
/// <param name="gotoRedirectUri">要跳转的url</param>
/// <returns></returns>
public ActionResult AuthCode(string code,string state,string gotoRedirectUri)
{
//判断code是否为空
if(string.IsNullOrWhiteSpace(code))
{
ViewBag.error = "code 为空!";
return View();
}
if(string.IsNullOrWhiteSpace(gotoRedirectUri))
{
ViewBag.error = "跳转链接不能为空!";
return View();
}
return Redirect("http://"+gotoRedirectUri+"?code="+code+"&state="+state);
}
}

所用到的类

public class WxConfig
{
private static string appId => ConfigurationManager.AppSettings["WxAppId"];
//授权页面
public static string getCodeUri(string redirect)
{
var enencodeUri = HttpUtility.UrlEncode(redirect.ToLower()); //编码
return $@"https://open.weixin.qq.com/connect/oauth2/authorize?appid={appId}&redirect_uri={enencodeUri}&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect";
}

C# 微信网页授权多域名解决的更多相关文章

  1. php实现微信网页授权回调代理

    一个简单的php文件,实现微信网页授权回调域名的代理转发  <?php function is_HTTPS() { if (!isset($_SERVER['HTTPS'])) return F ...

  2. 解决微信OAuth2.0网页授权回调域名只能设置一个的问题

    https://github.com/HADB/GetWeixinCode GetWeixinCode 解决微信OAuth2.0网页授权回调域名只能设置一个的问题 使用方法 部署get-weixin- ...

  3. Java微信公众平台开发(十六)--微信网页授权(OAuth2.0授权)获取用户基本信息

    转自:http://www.cuiyongzhi.com/post/78.html 好长时间没有写文章了,主要是最近的工作和生活上的事情比较多而且繁琐,其实到现在我依然还是感觉有些迷茫,最后还是决定静 ...

  4. 手把手实现微信网页授权和微信支付,附源代码(VUE and thinkPHP)

    wechat github 手把手实现微信网页授权和微信支付,附源代码(VUE and thinkPHP) 概述 公众号开发是痛苦的,痛苦在好多问题开发者文档是没有提到的,是需要你猜的. 在开发过程中 ...

  5. VueJs单页应用实现微信网页授权及微信分享功能

    在实际开发中,无论是做PC端.WebApp端还是微信公众号等类型的项目的时候,或多或少都会涉及到微信相关的开发,最近公司项目要求实现微信网页授权,并获取微信用户基本信息的功能及微信分享的功能,现在总算 ...

  6. 玩玩微信公众号Java版之六:微信网页授权

    我们经常会访问一些网站,用微信登录的时候需要用到授权,那么微信网页授权是怎么一回事呢,一起来看看吧!   参考官方文档:https://mp.weixin.qq.com/wiki?t=resource ...

  7. 微信网页授权封装接口——node.js版

    Wechat 网页授权 授权url:(请在微信客户端中打开此链接体验) xxx为config.js中的WECHAT_DOMAIN 1.scope为snsapi_base xxx/?route=auth ...

  8. php 微信登录 公众号 获取用户信息 微信网页授权

    php 微信登录 公众号 获取用户信息 微信网页授权 先自己建立两个文件: index.php  和  getUserInfo.php index.php <?php //scope=snsap ...

  9. 服务号使用微信网页授权(H5应用等)

    获取授权准备 AppId 服务号已经认证且获取到响应接口权限 设置网页授权域名 公众号设置 - 功能设置 - 网页授权域名.注意事项: 回调页面域名或路径需使用字母.数字及"-"的 ...

随机推荐

  1. 学习笔记之English

    雅思听力地图题的常用短语 - 无忧机经预测 https://mp.weixin.qq.com/s/VmV3L2METymtjMWHY2fNiA 雅思听力租房的那些事儿 - 北京市海淀区环球雅思 htt ...

  2. python 中增加css样式的三种方式

    增加css样式的三种方式: <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...

  3. node vue

    官网 ECMAScript 6 Node.Js WebPack Vue.js Vuex Vue-loader (类比css-loader,是webpack中用于处理.vue文件的) vue-route ...

  4. 图片支持get请求访问

    BufferedInputStream in = new BufferedInputStream(doc2.getContent());//读取文件到输入流 OutputStream out = re ...

  5. 刘志梅2017710101152.《面向对象程序设计(java)》第十二周学习总结

    实验十二  图形程序设计 实验时间 2018-11-14 1.理论知识 (1) 基本AWT库采用将处理用户界面元素的任务委派给每个目标平台的本地GUI工具箱的方式,由本地GUI工具箱负责用户界面元素的 ...

  6. VMware 12 安装 Windows server 2008 系统

    一.准备工作 安装了VMware 12 的PC 准备windows  server 2008 的ISO操作系统文件 官网地址:https://www.microsoft.com/en-us/downl ...

  7. java异常处理——finally相关

    示例程序1 public class EmbededFinally { public static void main(String args[]) { int result; try { Syste ...

  8. mysql数据库的理解

    1.索引结构原理: 普通的Btree(binary search tree)就是二叉树,如下图 B+ Tree索引类型则是二叉树的升级版,每个节点存的是 <num ,最后存排序的ROWID Ha ...

  9. js原生倒计时

    倒计时是2019年6月7号10点开始的 代码粘贴过去直接运行即可 <!DOCTYPE html> <html lang="en"> <head> ...

  10. consul的安装与使用

    consul官网下载地址 https://www.consul.io/downloads.html 下载后解压 在bat文件中增加如下内容,就可以双击启动了 start consul agent -d ...