码迷,mamicode.com
首页 > Web开发 > 详细

asp.net MVC 使用wifidog 协议实现wifi认证

时间:2014-08-31 02:46:20      阅读:322      评论:0      收藏:0      [点我收藏+]

标签:blog   http   os   使用   io   ar   数据   2014   cti   

在网上看到的很多实现的wifidog 协议一般都是PHP 的,了解一下PHP 但是比较喜欢.net ,所以实现了简单的一个进行登录认证的功能

(好多协议中的功能目前没有实现)

 

1. 开发环境(vs2010 )

2. 路由(支持wifidog协议的 ddwrt )

3. 环境的配置

  主要是进行路由的配置

 截图如下:

    bubuko.com,布布扣

 

bubuko.com,布布扣

    

    注意红圈的部分这个我按照php 的配置 

  asp.net MVC 的配置如下:

 

   端口 9999  authserver path  /login/

  4. MVC 项目布局:

 

    bubuko.com,布布扣

loginController.cs 代码如下:

 

public class loginController : Controller
{
//
// GET: /login/

public ActionResult login()
{
string demo = Request.QueryString.ToString();
ViewData["demo"]=demo;
ViewData["gw_address"] = Request.QueryString["gw_address"];
ViewData["gw_port"] = Request.QueryString["gw_port"];
ViewData["gw_id"] = Request.QueryString["gw_id"];
//ViewData["url"]=Request.QueryString["url"];
string url = Request.QueryString["url"];
// string url = "www.cnblogs.com";

ViewData["url"] = url;
Response.Write("Auth:1");
return View();
}

public ActionResult index()
{
return View();
}

public ActionResult auth()
{
// result data = new result();

Response.Write("Auth:1");
return View();


}
public ActionResult MyLogin()
{

return View();
}
}

代码写的比较乱,但是还是比较简单的。

login  view 的代码如下:

<%
Label1.Text = ViewData["demo"].ToString() + "<br/>" ;

if (ViewData["url"] == null)
{

}
else
{
string a = ViewData["gw_address"].ToString();
string p = ViewData["gw_port"].ToString();
string token = Guid.NewGuid().ToString();
string url=ViewData["url"].ToString();
string demo = "http://" + a + ":" + p + "/wifidog/auth?token=" + token + "url=" + url;

ViewData["authurl"] = demo;
Application["authurl"] = demo;
}

%>

dalong demo app
</h2>
<p>


<h1>
登陆页面
</h1>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</p>

[ <%: Html.ActionLink("进入", "MyLogin", "login")%> ]

Mylogin view 的代码如下:

 

<%

string tepdemo = "Auth: 1";
byte[] data = System.Text.Encoding.Default.GetBytes(tepdemo);
char[] list = System.Text.Encoding.Default.GetChars(data);
Response.Write(list, 0, list.Length);
Response.Redirect(Application["authurl"].ToString());
%>

 

5. 手机端的测试效果:

 

  bubuko.com,布布扣

window phone 连接wifi 的显示界面

  点击进入如下效果:

bubuko.com,布布扣

  

连接成功标志:

打开网页:

bubuko.com,布布扣

 

其中对于认证最重要的是按照协议返回的数据:

比如我通过返回的数据:

Auth: 1

拒绝为: Auth: 0

以上只是简单的测试,实际应用需要很多的东西。

 

asp.net MVC 使用wifidog 协议实现wifi认证

标签:blog   http   os   使用   io   ar   数据   2014   cti   

原文地址:http://www.cnblogs.com/rongfengliang/p/3947199.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!