用winform应用程序登录网站的解决方案

用winform应用程序登录网站的解决方案

背景:
网站使用Membership机制来验证用户

要求:
c/s应用程序要用网站上的用户名和密码登录,同时在c/s端登录后,浏览网站时就无需再重复登录

思路:
1。.net网站对用户是否登录的判断依据是:检查浏览器客户端是否存在有效的cookie验证票据,如果在c/s winform中登录的同时,能让用户浏览器生成验证票据,则实现在winform中登录后,浏览网站时无需再重复登录的问题得已解决

具体操作:可在网站上建一个专用页面,功能为验证用户信息合法后,发放验证票据,然后在winform中登录成功后,模拟访问一下这个页面即可(注:经实践,不能用webRequest或webClient来实现,webRequest或webClient虽然可以达到用程序访问该页的效果,但并不能正确设置浏览器的cookie,正确的解决办法是在winform中放置一个webBrowser,让webBrowser来访问该页,这样就跟用户真正用浏览器浏览网页得到的效果才是一样的)

2。再来看第二个问题,如何在winform中使用网站的MemberShip数据库,这里提供二种基本的解决方案:
(a)在winform中引用System.Web,这样的话,就可以直接使用Membership类了,但不建议这样做,原因是:如果在网站的web.config中修改了membershipProvider的相关信息,比如applicationName后,winform中的设置也必须完全相同,否则的话,winform与webform对应的基本不是同一个application,出问题就不奇怪了
(b)利用webSerivce,在网站上建一个webService,功能为接受username和password进行验证,通过返回true,不通过返回false,在winform应用程序中,直接调用这个webservice即可

转载于:https://www.cnblogs.com/yjmyzz/archive/2008/01/29/1057562.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值