zoukankan      html  css  js  c++  java
  • c#控制台实现post网站登录

    如题,首先我写了一个web页面来实现post登陆,只做演示,代码如下

     public void ProcessRequest(HttpContext context)
            {
                context.Response.ContentType = "text/plain";
                string name = context.Request.Params["username"];
                
                if (name == "1")
                {
                    context.Response.Write("ok");
                }
                else
                {
                    context.Response.Write("no");
                }
           
            }
    

    只要name是1就ok否则no

    简洁说下Get和post  get通过在网络地址中附加参数来完成数据的提交,可以在url地址中看到,而post则是在页面内容中填写参数来完成提交  F12看一下就是username=1&userpwd=1这种格式的, POST 中文数据的时候,先中文字符转换为编码后的 ASCII 码,然后提交到服务器,提交的时候可以说明编码的方式,用来使对方服务器能够正确的解析。

    然后控制台模拟一下  HttpWebRequest  HttpWenResponse

    HttpWebRequest类主要利用Http协议来和服务器交互,在Method中指定提交方式,GET或者POST

    代码如下

     static void Main(string[] args)
            {
                string name = "1";
                string postdata = "username=" + name;
                byte[] data = Encoding.UTF8.GetBytes(postdata);
                HttpWebRequest webrequest = (HttpWebRequest)WebRequest.Create("http://localhost:8022/login.ashx");
                webrequest.Method = "POST";
                webrequest.ContentType = "application/x-www-form-urlencoded";
                webrequest.ContentLength = data.Length;
                Stream stream = webrequest.GetRequestStream();
                stream.Write(data, 0, data.Length);
                stream.Close();
                HttpWebResponse webresponse = (HttpWebResponse)webrequest.GetResponse();
                StreamReader sr = new StreamReader(webresponse.GetResponseStream(), Encoding.UTF8);
                string s = sr.ReadToEnd();
                Console.WriteLine(s);
            }
    

      结果自然ok  当把name改为2结果为no满足需求

    当然这只是一个很简单的模拟,也就是试验一下

  • 相关阅读:
    进程,进程
    hmac和socketserver
    下载Eclipse、下载Java各个版本,来这里就对了
    Java循环语句怎么用?经典排序算法见真知
    CSS基本语法
    Html属性标签
    HTML标记大全参考手册
    composer 安装Laravel (win10)
    composer 安装(win)
    GIT
  • 原文地址:https://www.cnblogs.com/ZyCoder/p/6670907.html
Copyright © 2011-2022 走看看