通过Winform模拟post请求和get请求登录网站

引言

最近有朋友问如何用winform模拟post请求,然后登录网站,稍微想了一下,大致就是对http报文的相关信息的封装,然后请求网站登录地址的样子。发现自己的博客中对这部分只是也没总结,就借着这股风,总结一下http报文的相关知识吧。

HTTP定义

超文本传输协议 (HTTP-Hypertext transfer protocol) 是一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。

这里对http的具体内容就不再介绍了,主要分析http报文信息。

http报文分为:请求报文和响应报文。

HTTP请求报文

一个Http请求报文由请求行(request line)、请求头部(header)、空行和请求数据4个部分组成,请求报文个格式如下:

Post请求

弄一个简单的登录页面,使用ajax发送post请求,在IE下浏览,F12分析一下它的请求报文:

页面代码:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"   />
    <title>wolfy信息系统登录</title>
    <script type="text/javascript" src="Scripts/jquery-1.11.0.js"></script>
    <script type="text/javascript">
        $(function () {
            $("#btnLogin").click(function () {
                var name = $("#txtUserName").val();
                var pwd = $("#txtPwd").val();
                $.ajax({
                    url: "Ashx/Login.ashx",
                    data: "name=" + name + "&pwd=" + pwd,
                    type: "POST",
                    dataType: "text",
                    success: function (msg) {
                        if (msg=="1") {
                            $("#centerMsg").html("登录成功");
                        } else {
                            $("#centerMsg").html("登录失败");
                        }
                    }

                });
            });
        });
    </script>
</head>
<body>
    <center style="text-align:center;">
        <table>
            <tr>
                <td>用户名:</td>
                <td><input type="text" id="txtUserName" name="name" value="admin"   /></td>
            </tr>
            <tr>
                <td>密码:</td>
                <td><input type="password" id="txtPwd" name="name" value="admin"   /></td>
            </tr>
            <tr>
                <td colspan="2"><input type="button" id="btnLogin" name="name" value="登录"   /></td>
            </tr>
        </table>
        <center id="centerMsg"></center>
    </center>
</body>
</html>

Login.html

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索登录
, http
, function
, 网站
, http请求
, 模拟登录
, post请求
, winform 浏览word文档
, post登录
, 报文
, 信息
, winform旋转登录界面
, #模拟登录
请求报文
winform post请求、c winform post请求、winform get请求、post和get请求的区别、get与post请求的区别,以便于您获取更多的相关知识。

时间: 2024-09-08 14:33:48

通过Winform模拟post请求和get请求登录网站的相关文章

Android--httpclient模拟post请求和get请求

HttpClient的使用模式: 1. 创建一个HttpClent 2.实例化新的HTTP方法,比如PostMethod 或 GetMethod 3.设置HTTP参数名称/值 4.使用HttpClent执行HTTP调用 5.处理Http响应 [java] view plain copy  print? import java.io.IOException;   import java.io.InputStream;   import java.net.URLEncoder;   import j

java使用httpclient模拟post请求和get请求示例_java

复制代码 代码如下: import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader; import org.apache.commons.httpclient.DefaultHttpMethodRetryHandler;import org.apache.commons.httpclient.Header;import org

iOS开发网络篇—GET请求和POST请求

一.GET请求和POST请求简单说明 创建GET请求 1 // 1.设置请求路径 2 NSString *urlStr=[NSString stringWithFormat:@"http://192.168.1.53:8080/MJServer/login?username=%@&pwd=%@",self.username.text,self.pwd.text]; 3 NSURL *url=[NSURL URLWithString:urlStr]; 4 5 // 2.创建请求对

JSP、Servlet中get请求和post请求的区别总结_java

在学习JavaWeb最初的开始阶段,大家都会遇到HttpServlet中的doGet和doPost方法.前两天看<Head First Servlets & JSP>看到其中讲关于Servlet中get请求和post请求的区别,现总结如下: 1:请求数据的大小不同. 因为get请求的数据是要追加到URL中,而URL的数据量一般不能超过2K,所以用get请求的方法对数据的大小有限制.而post请求方法是把数据放在消息体中,所以理论上对数据量没有限制.(但是实际操作中也不能能太大) 2:安

求一个JAVA POST请求登录网站的代码

问题描述 很多网站用代码POST请求登录都进不去.求一个代码能登录http://jwch.fzu.edu.cn/的(登录CSDN也行).自己写的代码请求后是返回一个JS代码,而不是登录成功后的页面 解决方案 解决方案二:没明白你要做什么,javaPOST请求?你是模拟登陆还是在JSP页面中登陆?解决方案三:引用1楼xiaojiezhu52100的回复: 没明白你要做什么,javaPOST请求?你是模拟登陆还是在JSP页面中登陆? 模拟登陆解决方案四:用httpclient?还是htmlUnit用

java发送get请求和post请求示例_java

java向服务端发送GET和POST请求 复制代码 代码如下: package com.hongyuan.test; import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.HttpURLConnection;import java.net.URL; public class HttpCl

HttpClient3.x之Get请求和Post请求示例

HttpClient的支持在HTTP/1.1规范中定义的所有的HTTP方法:GET, HEAD, POST, PUT, DELETE, TRACE 和 OPTIONS.每有一个方法都有一个对应的类:HttpGet,HttpHead,HttpPost,HttpPut,HttpDelete,HttpTrace和HttpOptions.所有的这些类均实现了HttpUriRequest接口,故可以作为execute的执行参数使用.请求URI是能够应用请求的统一资源标识符. HTTP请求的URI包含一个协

PHP中的使用curl发送请求(GET请求和POST请求)

使用CURL发送请求的基本流程 使用CURL的PHP扩展完成一个HTTP请求的发送一般有以下几个步骤: 1.初始化连接句柄: 2.设置CURL选项: 3.执行并获取结果: 4.释放VURL连接句柄. 下面的程序片段是使用CURL发送HTTP的典型过程 // 1. 初始化 $ch = curl_init(); // 2. 设置选项,包括URL curl_setopt($ch,CURLOPT_URL,"http://www.devdo.net"); curl_setopt($ch,CURL

JavaWeb项目的中文乱码的原因以及Servlet中处理GET请求和POST请求编码过滤器

一.乱码原因 ①传输方和接收方采用的编码不一致.传输方对参数采用的是UTF-8编码而接收方却用GBK进行解析,当然是乱码. ②Tomcat服务器默认采用的ISO8859-1编码得到参数值.虽然①中采用了同样的编码方式,但经过tomcat一处理,也会出现乱码(GET方式)   二.解决办法 方法一 每次传输都手动设置编码(GET方式传输数据) 传输方 String name = URLEncoder.encode("张三","UTF-8"); String path