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 ...
随机推荐
- JavaScript加密解密7种方法
注:本文纯转贴,供学习使用 本文一共介绍了七种javascript加密方法: 在做网页时(其实是网页木马呵呵),最让人烦恼的是自己辛辛苦苦写出来的客户端IE运行的javascript代码常常被别人轻易 ...
- 里根上台时国债只占GDP的30%
学里根是刻舟求剑,关键是钱从哪来 5 里根主要靠借钱,这是冷战红利,美国打完二战国债占了GDP的120%,然后总量就没怎么增加,但战后GDP快速增长,结果国债占GDP的比例连续下降,打越战登月石油危 ...
- blog_html
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE html> <html b:v ...
- POJ 3145 线段树 分块?+暴力
思路: 线段树 (分类讨论) 此题数据很水 数据很水 数据很水 但是卡个暴力还是没问题的-- //By SiriusRen #include <cstdio> #include <c ...
- Kali linux 2016.2(Rolling)中metasploit的端口扫描
目前常见的端口扫描技术一般有如下几类: TCP Connect.TCP SYN.TCP ACK.TCP FIN. Metasploit中的端口扫描器 Metasploit的辅助模块中提供了几款实用的 ...
- The 2018 ACM-ICPC China JiangSu Provincial Programming Contest(第六场)
A Plague Inc Plague Inc. is a famous game, which player develop virus to ruin the world. JSZKC wants ...
- vue组件递归的一些理解
自己做个小项目练手,需要用到组件递归,网上查了一些资料,每个代码片段都认识,但是连起来,就一团浆糊. 既然人傻就多思考吧.不明白的点有以下: 1.组件怎么自己调用自己,函数的递归是就是在functio ...
- 高并发MYSQL如何优化处理?
1)代码中sql语句优化 2)数据库字段优化,索引优化 3)加缓存,redis/memcache等 4)主从,读写分离 5)分区表 6)垂直拆分,解耦模块 7)水平切分
- c#+ArcGIS Engine-获取矢量图层的空间参考
转自原文c#+ArcGIS Engine-获取矢量图层的空间参考 介绍一种简单的获取矢量图层空间参考的方法: 首先打开Shp文件获得FeatureClass,代码如下: string pPath=&q ...
- ArcGIS api for javascript——用缓存区查询地图
描述 本例展示了如何在另外一个任务里使用一个任务的结果.单击地图查看被单击的点的1公里范围内的缓存(如果需要可以修改这个默认的缓存距离).也可以看缓存区的这些点的人口普查街区信息.单击一个点查看更多的 ...