C#最简单的登录Web服务
因为演示程序,所以有下面问题:
1。password是明码传输。
本文在 C#建立最简单的web服务,无需IIS 的基础上完毕。
详细步骤:
一。RequestProcessor添加变量mLogin,改写ParseRequestAndProcess函数。
protected bool mLogin = false;
public bool ParseRequestAndProcess(string[] RequestLines)//解析内容
{
char[] sp = new Char[1] { ' ' };
string[] strs = RequestLines[0].Split(sp);
if (strs[0] == "GET")
{
Send(strs[1], 0, 0);
}
else if ("POST" == strs[0])
{
for (int j = 1; j < RequestLines.Length; j++)
{
if (RequestLines[j].IndexOf('&') >= 0)
{
if( mLogin )
{
SendHeadrAndStr("已经登录。不能反复登录。
");
}
else
{
//分拆username和password
String sName = "";
String sPassWord = "";
string[] s = RequestLines[j].Split('&');
for (int k = 0; k < s.Length; k++)
{
string[] sItems = s[k].Split('=');
if (null == sItems || sItems.Length < 2)
continue;
if ("username" == sItems[0])
sName = sItems[1];
if ("password" == sItems[0])
sPassWord = sItems[1];
}
//模拟登录
if ("a" == sName && "b" == sPassWord)
{
mLogin = true;
SendHeadrAndStr("登录成功。");
}
else
{
SendHeadrAndStr("username、password不匹配。");
}
}
}
}
}
return false;
}
二,改写index.htm。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>3</title>
<script>
function check()
{
var username=document.getElementById("username");
var pass=document.getElementById("password");
if(username.value=="")
{
alert("请输入username");
username.focus();
return false;
}
if(pass.value=="")
{
alert("请输入password");
pass.focus();
return false;
}
return true;
}
</script>
</head>
<body>
<form name= "LoginForm" method="post" onsubmit="return check()">
<table width="350" bgcolor="#ccffcc" style="border-color" border="1">
<tr>
<td width="100">
username
</td>
<td>
<input type="text" name="username" id="username">
</td>
</tr>
<tr>
<td>
密 码
</td>
<td>
<input type="password" name="password" id="password">
</td>
</tr>
<tr>
<td>
</td>
<td>
<input type="submit" value="登 录" >
</td>
</tr>
</table>
</form>
</body>
</html>
C#最简单的登录Web服务的更多相关文章
- 一、搭建简单的axis web服务
转: 一.搭建简单的axis web服务 1.在官方网站下载axis的工程(这个等下就有用的)和源码.jar包等,下载地址是: http://labs.renren.com/apache-mirror ...
- 018-Go将磁盘目录实现简单的静态Web服务
package main import( "net/http" ) func main(){ http.Handle("/", http.FileServer( ...
- go 实现简单的http web服务
package main import ( "fmt" "net/http" ) func hello(w http.ResponseWriter, r *ht ...
- 如何测试Web服务.2
-->全文字数:2700,需要占用你几分钟的阅读时间 ,您也可以收藏后,时间充足时再阅读- -->上一节讲了<Web服务基础介绍>,本节介绍可用于测试web服务的开源测试工具. ...
- 使用Java+NetBeans设计web服务和页面,用Tomcat部署网页
一 安装NetBeans(自动安装jdk) 二 创建服务器 三 发布服务 一 安装NetBeans(自动安装jdk) 进入oracle的下载界面: http://www.oracle.com/tech ...
- linux系统下开启一个简单的web服务
linux 下开启一个简单的web服务: 首先需要linux下安装nodejs 然后创建一个test.js: vi test.js var http =require("http&quo ...
- 【知了堂学习笔记】java web 简单的登录
最近皮皮潇在学习java web,刚接触了简单的东西,所以今天给大家带来一个简单的登录实现. 页面: 页面代码: <%@ page language="java" conte ...
- web服务的简单介绍及apache服务的安装
一,web服务的作用: 是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档.可以放置网站文件,让全世界浏览: 可以放置数据让全世界下载.目前最主流的三个Web服务器是Ap ...
- node创建一个简单的web服务
本文将如何用node创建一个简单的web服务,过程也很简单呢~ 开始之前要先安装node.js 1.创建一个最简单的服务 // server.js const http = require('http ...
随机推荐
- iPad iOS8.0升级和Xcode 6.0.1公布了,附Xcode 6.0.1下载地址
今天上午把iPad mini升级到了iOS 8.0,升级提示须要6.7G空间,无奈仅仅好把一些大的App删掉腾冲空间,然后開始升级,3小时后最终升级成功了. 下午试着把我们的App通过xcode 5 ...
- BZOJ4477: [Jsoi2015]字符串树
[传送门:BZOJ4477] 简要题意: 给出一棵n个点的树,树上的边都代表一个字符串,给出Q个询问,每个询问输入x,y和字符串s,求出x到y的路径上以s为前缀的字符串个数 题解: 自己yy了一波可持 ...
- python 统计文件top IP
lines = ''' 1.2.2.3 1.21.29.19.... ''' cnt = {} for line in lines.split(): if line not in cnt: cnt[l ...
- [POJ2728] Desert King 解题报告(最优比率生成树)
题目描述: David the Great has just become the king of a desert country. To win the respect of his people ...
- 14.hash_set(已过时,被unorded_set替代)
#define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS #include <iostream> #include <hash_set> ...
- Metasploit的攻击实例讲解----辅助扫描工具
不多说,直接上干货! 怎么弹出来这个呢,连续按两次tab. msf > use auxiliary/scanner/ Display all possibilities? (y or n) us ...
- 最近Criteria
第一次用Criteria,于是查了一下http://langgufu.iteye.com/blog/2039554 新鲜事排序算法http://www.zhihu.com/question/20319 ...
- webi和universe
Universe是一个包含以下内容的文件: 1 一个或多个数据库中间件的连接参数. 2 称为对象的SQL结构,映射到数据库中的实际SQL结构,如列,表和数据库函数.其中对象是按类分组的.用户既可以看到 ...
- bzoj1051 [HAOI2006]受欢迎的牛 tarjan&&缩点
题目描述 每头奶牛都梦想成为牛棚里的明星.被所有奶牛喜欢的奶牛就是一头明星奶牛.所有奶 牛都是自恋狂,每头奶牛总是喜欢自己的.奶牛之间的“喜欢”是可以传递的——如果A喜 欢B,B喜欢C,那么A也喜欢C ...
- mesg---设置当前终端的写权限
mesg命令用于设置当前终端的写权限,即是否让其他用户向本终端发信息.将mesg设置y时,其他用户可利用write命令将信息直接显示在您的屏幕上. 语法 mesg(参数) 参数 y/n:y表示运行向当 ...