前台

    @if (Session["username"] != null)
{
<div class="login">
<span style="width:155px;height:85px;display:inline-block;margin-left:50px;margin-top:25px;text-align:center">
@(Session["username"])&nbsp;&nbsp;您好!<br />欢迎登录@(ChaoXingPMS.Utils.Site.Name)。<br /><a href="interfaceapi?mode=exit&backurl=@(Server.UrlEncode(Request.Url.AbsoluteUri))">退出</a>
</span>
</div>
}
else
{
<div class="login">
证 号:&nbsp;&nbsp;<input type="text" name="username" id="username" class="zjh" /><br />
密 码:&nbsp;&nbsp;<input type="password" name="pw" id="pw" class="mm" /><br />
<input class="login_btn" type="button" value="登录" name="button" id="login" style="cursor:pointer"/>
</div>
}

js:

$(function () {
$("#btn_login").click(function () {
$(".pop_login").css("display", "block");
$(".pop_last").css("display", "block");
});
$("#close").click(function () { $(".pop_login").css("display", "none");
$(".pop_last").css("display", "none"); }); $("#username").keydown(function () {
if (event.keyCode == ) //回车键的键值为13
$("#login").click(); //调用登录按钮的登录事件
})
$("#pw").keydown(function () {
if (event.keyCode == ) //回车键的键值为13
$("#login").click(); //调用登录按钮的登录事件
}) $("#login").click(function () {
var name = $("#username").val();
var pw = $("#pw").val();
if (name == "" || pw == "") {
$("#tip").html("<em>*&nbsp;</em>账号密码不能为空");
return;
}
$.ajax({
type: "post",
dataType: "json",
data: "username=" + name + "&password=" + pw + "&mode=" + loginmode + "&time=" + (new Date().getTime()),
//url: "InterFaceAPI",
url: "/interface/LoginData.cshtml",
error: function (XmlHttpRequest, textStatus, errorThrown) { alert(XmlHttpRequest.responseText); },
success: function (d) {
if (d.status == ) {
$("#tip").html("");
//window.location = '/';
location.reload();
//$("#logindiv").html("<div class='login_top'>用户登录</div><span style='line-height:58px;'>" + d.uname + "&nbsp;&nbsp;您好!<br/>欢迎登录" + d.wname + "。<a href='/interface/LoginData.cshtml?outtype=logout'>&nbsp;&nbsp;退出</a></span>");
}
else {
$("#tip").html("<em>*&nbsp;</em>" + d.message);
}
}
}); });
})

ajax请求:

var username = HttpContext.Current.Request["username"];
var password = HttpContext.Current.Request["password"];
var loging_url = appSetting["loging_url"].ToString();
var pwdm5 = ChaoXingPMS.Utils.MD5.Lower32(password);
string formUrl = loging_url;//url地址
string returnUrl = "";
//string logintypej = "CALLNO";
//string URL = "ReaderTable.aspx";
string formData = "returnUrl=" + returnUrl + "&rdid=" + username + "&rdPasswd=" + pwdm5;
CookieContainer cookieContainer = new CookieContainer();
// 将提交的字符串数据转换成字节数组
byte[] postData = Encoding.UTF8.GetBytes(formData);
HttpWebRequest request = WebRequest.Create(formUrl) as HttpWebRequest;
Encoding myEncoding = Encoding.GetEncoding("gb2312");
request.Method = "POST";
request.KeepAlive = false;
request.AllowAutoRedirect = true;
request.ContentType = "application/x-www-form-urlencoded";
request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)";
request.CookieContainer = cookieContainer;
request.ContentLength = postData.Length;
// 提交请求数据
System.IO.Stream outputStream = request.GetRequestStream();
outputStream.Write(postData, , postData.Length);
outputStream.Close(); HttpWebResponse response;
Stream responseStream;
StreamReader reader;
string srcString;
response = request.GetResponse() as HttpWebResponse;
responseStream = response.GetResponseStream();
reader = new System.IO.StreamReader(responseStream, Encoding.UTF8);
srcString = reader.ReadToEnd();
reader.Close(); //关闭流对象
reader.Close();
responseStream.Close();
reader.Close();
response.Close(); //确认是否能获取权限
if (srcString.IndexOf("欢迎您") > )
{
Session["isNowLogin"] = ;//是否是登陆动作
Session["isLogin"] = ;//是否登陆成功
Session["username"] = username;
Session["password"] = password;
Session["logingMsg"] = "登录成功!";
if (IsAjax)
{
ExecuteResult(c => c.Json(new { status = , uname = username, upwd = password}));
return;
} }
else
{
Session["isNowLogin"] = ;
Session["isLogin"] = ;
Session["logingMsg"] = "登录失败!";
string message = "登录失败!";
if (IsAjax)
{
ExecuteResult(c => c.Json(new { status = , message = message }));
return;
}
}

ajax请求模拟登录的更多相关文章

  1. Python post请求模拟登录淘宝并爬取商品列表

    一.前言 大概是一个月前就开始做淘宝的爬虫了,从最开始的用selenium用户配置到selenium模拟登录,再到这次的post请求模拟登录.一共是三篇博客,记录了我爬取淘宝网的经历.期间也有朋友向我 ...

  2. 2020.10.20 利用POST请求模拟登录知乎

    前两天学习了Python的requests模块的相关内容,对于用GET和PSOT请求访问网页以抓取需要的内容有了初步的了解,想要再从一些复杂的网站积累些经验.最开始我采用最简单的get(url)方法想 ...

  3. 利用POST请求模拟登录豆瓣

    需要用requests库 豆瓣上次更新后,就不能通过直接的requests.post()方式直接传递参数登录了.必须新建session,先GET请求,然后POST才能成功.原因未知 data参数中的四 ...

  4. C#模拟登录后请求查询

    需求是这样子的,想开发一个外挂程序,能够抓取别的系统的数据,从而实现数据验证. 比如这样一个界面: 使用Chrome浏览器分析http请求和响应过程以及页面的html代码,发现这是一个ajax请求,于 ...

  5. day78_淘淘商城项目_11_单点登录系统实现 + 用户名回显 + ajax请求跨域问题详解_匠心笔记

    课程计划 1.SSO注册功能实现 2.SSO登录功能实现 3.通过token获得用户信息 4.ajax跨域请求解决方案--jsonp 1.服务接口实现   SSO系统就是解决分布式环境下登录问题的,本 ...

  6. 通过配置http拦截器,来进行ajax请求验证用户登录的页面跳转

    在.NET中验证用户是否登录或者是否过期,若需要登录时则将请求转向至登录页面. 这个流程在进行页面请求时是没问题的,能正确进行页面跳转. 然而在使用xmlhttprequest时,或者jq的getJs ...

  7. 使用 jQuery Mockjax 插件模拟 Ajax 请求

    在实际的开发过程中,前端后台协商好了统一的接口,就各自开始自己的任务了.这时候我有这么一个 Ajax 请求需要从后台获取数据: $.ajax({ url: '/products/' }).done(f ...

  8. AJAX请求遭遇未登录和Session失效的解决方案

    使用技术:HTML + Servlet + Filter + jQuery 一般来说我们的项目都有登录过滤器,一般请求足以搞定.但是AJAX却是例外的,所以解决方法是设置响应为session失效. 一 ...

  9. Session失效后所有Ajax请求跳转登录地址

    当登录的Session失效后,采用ajax请求数据时会没有反应,这时候应该自动跳转到登录页面,让用户重新登录. 全局配置以下可实现 $(function() { $.ajaxSetup({ compl ...

随机推荐

  1. hbase常用命令总结

    创建表:表名:csliyb:testuser列族:name 例子:create 'csliyb:testuser','name','age' 添加记录: put 'csliyb:testuser',' ...

  2. CVE

    一.简介 CVE 的英文全称是"Common Vulnerabilities & Exposures"公共漏洞和暴露.CVE就好像是一个字典表,为广泛认同的信息安全漏洞或者 ...

  3. Linux命令的类型

    1.内建命令: 由shell程序自带的命令,最常见的有cd.pwd等. 使用type命令即可查看命令属于哪种,比如: #type cd cd is a shell builtin ————>看到 ...

  4. VMware Workstation不可恢复的错误:(vmui)

    虚拟机中部署项目,由于项目的日志是gbk的,就把虚拟机中linux编码改成gbk了,结果问题来了,日志显示中文正常了,但是虚拟机运行一下就出错了,注意虚拟机出错,并没导致linux也挂掉,只是linu ...

  5. 动手学习TCP:4种定时器

    上一篇中介绍了TCP数据传输中涉及的一些基本知识点.本文让我们看看TCP中的4种定时器. TCP定时器 对于每个TCP连接,TCP管理4个不同的定时器,下面看看对4种定时器的简单介绍. 重传定时器使用 ...

  6. 免费微信公众号专用h5在线电影票API

    免费h5在线电影票API,通过嵌套返回的h5页面url,实现电影票购买. 接口文档:https://www.juhe.cn/docs/api/id/252,通过此申请APPKEY 接口备注:通过请求返 ...

  7. FDTD Python API

    源代码 #!/usr/bin/env python from math import exp from gnuplot_leon import * imp0 = 377.0 class fdtd_le ...

  8. 给定一个整数N,找出一个比N大且最接近N,但二进制权值与该整数相同 的数

    1,问题描述 给定一个整数N,该整数的二进制权值定义如下:将该整数N转化成二进制表示法,其中 1 的个数即为它的二进制权值. 比如:十进制数1717 的二进制表示为:0000 0110 1011 01 ...

  9. 五个有用的jquery小技巧

    1.禁用鼠标右键 $(document).ready(function() { $(document).bind("contextmenu", function(e) { retu ...

  10. java 21 - 1 IO流中的字符流概述

    字节流通过读取一个byte数组的方式可以读取中文的,但是有可能出现小问题,所以,读取中文最好是用字符流. 字符流: 字符流=字节流+编码表. 编码表: 由字符及其对应的数值组成的一张表 编码表介绍: ...