var appid = "wxb5f2540cff5c72be";
var secret = "3de016d0c294b82a5c74ce3fc4865271"; var openid = Response.Cookies["openid"];
if (openid!=null&&openid.Value!=null&&!string.IsNullOrEmpty(openid.Value.ToString()))
{
//........
}
else
{
//取用户openid
var code = Request.QueryString["Code"];
if (string.IsNullOrEmpty(code))
{
var url = string.Format("https://open.weixin.qq.com/connect/oauth2/authorize?appid={0}&redirect_uri=http%3a%2f%2fbsbw2011.gicp.net%2flogin.aspx&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect", appid);
Response.Redirect(url);
}
else
{
var client = new System.Net.WebClient();
client.Encoding = System.Text.Encoding.UTF8; var url = string.Format("https://api.weixin.qq.com/sns/oauth2/access_token?appid={0}&secret={1}&code={2}&grant_type=authorization_code", appid, secret, code);
var data = client.DownloadString(url); var serializer = new JavaScriptSerializer();
var obj = serializer.Deserialize<Dictionary<string, string>>(data);
string accessToken;
if (!obj.TryGetValue("access_token", out accessToken))
return; var opentid = obj["openid"];
HttpCookie openidCookie = new HttpCookie("openid");
openidCookie.Value = opentid;
openidCookie.Expires = DateTime.Now.AddYears();
this.Response.Cookies.Add(openidCookie); //......
}
}

最新文章

  1. springmvc+json
  2. jenkin系列_调度jmeter实现分布式测试
  3. FalseEasting 和 FalseNorthing
  4. zoom:1-hasLayout
  5. 简单分析下用yii2的yii\helpers\Html类和yii.js实现的post请求
  6. ASP.NET WebApi 使用Swagger生成接口文档
  7. java设计师初入职场,如何站稳脚跟
  8. LinkedHashMap 底层分析
  9. 利用Java手写简单的httpserver
  10. insmod 签名问题
  11. python学习—几个简单小程序
  12. 关于spring boot在IDE工具中可以启动成功,但是打成jar包以及运行jar包失败的问题
  13. django + nginx + uwsgi
  14. mui---获取入口文件对象
  15. day_6.17 gevent版服务器
  16. FFmpeg:视频转码、剪切、合并、播放速调整
  17. Python2.7-fnmacth
  18. 微信web开发者工具同时打开两个小程序项目
  19. 开源代码ViewPageIndicator的使用
  20. 算法笔记_044:表达式计算求值(Java)

热门文章

  1. unity, sceneview 中拾取球体gizmos
  2. C#, float.ToString()的一个坑
  3. mysql初学
  4. startActivityForResult用法详解
  5. js Number越界比较.
  6. Phonegap在ios7上系统状态栏的问题解决
  7. Metro 应用无法打开解决办法
  8. Windows 7 的系统文件修复:sfc /scannow
  9. 【转】SQL SERVER CLR存储过程实现
  10. 黄聪:NaviCat通过Http方式连接服务器的MySQL数据库(转)