公交Wifi熱點方案--利用Web認證頁面實現廣告投放

這是我們最近在做的一個公交Wifi系統的一個方案。

認證頁面的截圖

點擊廣告圖片後進入廣告目標地址(測試版的廣告地址是百度移動版主頁)

【以下是方案說明】

網頁認證實現採用的Wiwiz,自定義認證頁面的web程序放在自己的服務器上(測試版地址是192.168.1.10)。

設置方法如下:
設置“自定義認證頁面URL”爲http://192.168.1.10:8080/showAD/adwifi.htm
“自定義認證後跳轉URL”爲http://192.168.1.10:8080/showAD/index.jsp?start=1

參考下圖:

 

還要將自己的系統服務器的域名或者IP加入到地址白名單。

以下是程序源代碼:
adwifi.htm (認證頁面)

  1. <html> 
  2. <head> 
  3. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
  4. <meta http-equiv="Pragma" content="no-cache"> 
  5. <meta http-equiv="Cache-Control" content="no-cache"> 
  6. <!-- 必須引入AuthPageScript.js --> 
  7. <script src="/as/AuthPageScript.js"></script> 
  8. </head> 
  9. <body> 
  10. <form name="myform" id="myform" action="" method="post"> 
  11. <center> 
  12. <b>歡迎使用公交WiFi熱點</b> 
  13. <br><br> 
  14. <font style="font-size:14px"> 
  15. 點擊以下廣告後開始使用<br> 
  16. </font> 
  17. <span id="ADZone"></span> 
  18.  
  19. <script src="index.jsp?script=1"></script> 
  20. <br> 
  21.  
  22. </center> 
  23. </form> 
  24. </body></html> 


index.jsp(綜合處理)

 

  1. <% 
  2. //嵌入到認證頁面的Javascript代碼 
  3. if(request.getParameter("script") != null) { 
  4. %> 
  5.  
  6. //全部廣告圖片與廣告鏈接 
  7. var allAD = new Array( 
  8. ["ad/ad1.png""http://m.baidu.com"], 
  9. ["ad/ad2.png""http://m.baidu.com"], 
  10. ["ad/ad3.png""http://m.baidu.com"], 
  11. ["ad/ad4.png""http://m.baidu.com"
  12. ); 
  13.  
  14. //從allAD數組中隨機選取顯示廣告 
  15. var x = Math.floor(Math.random()* (allAD.length)); 
  16. var adImg = allAD[x][0]; 
  17. var adUrl = allAD[x][1]; 
  18.  
  19. var app = "<%=request.getRequestURL().toString()%>"
  20.  
  21. //點擊廣告之後調用此函數 
  22. function showAdAfterAuth(url) {         
  23.         var _src = app + "?seturl="+ encodeURIComponent(url) + "&r=" + Math.random(); 
  24.          
  25.         var script = document.createElement('script'); 
  26.         script.setAttribute('src', _src);   
  27.         document.getElementsByTagName('head')[0].appendChild(script); 
  28.  
  29. //顯示廣告 
  30. document.getElementById("ADZone").innerHTML = "<a href=\"javascript:showAdAfterAuth('"+ adUrl +"')\"><img src='"+ adImg +"' border='0' /></a>"
  31.  
  32. <% 
  33.  
  34. //點擊廣告後在Session中存儲廣告鏈接,然後回調WiwizStartAuth()函數進行認證 
  35. if(request.getParameter("seturl") != null) { 
  36.         session.setAttribute("seturl", request.getParameter("seturl")); 
  37.         out.print("WiwizStartAuth();"); 
  38.  
  39. //認證後從Session中讀取廣告鏈接並跳轉 
  40. if(request.getParameter("start") != null) {         
  41.         response.sendRedirect((String) session.getAttribute("seturl")); 
  42. %> 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章