模拟form提交表单GET/POST 方式

<script>
        var xmlhttp=false;

        function sendurlget()
        {
            username = document.getElementById("username").value;
            pwd = document.getElementById("pwd").value;
            if (username == "") {
                document.getElementById("show").innerText = "用户名不能为空!";
            }
            else {
                    createhttp();
            }

            url = "server.aspx?username=" + username + "&pwd=" + pwd;
            xmlhttp.open("GET", url, true);
            xmlhttp.onreadystatechange = onchangestate;
            xmlhttp.send(null);

        }

        function sendurlpost() {
            username = "username="+document.getElementById("username").value;
            pwd = document.getElementById("pwd").value;
            if (username == "") {
                document.getElementById("show").innerText = "用户名不能为空!";
            }
            else {
                createhttp();
            }

            url = "server.aspx?method=post";
            xmlhttp.open("POST", url, true);
            xmlhttp.onreadystatechange = onchangestate;
            xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
            xmlhttp.send(username);

        }

        function onchangestate()
        {
            if (xmlhttp.readyState == 4)
            {
                if (xmlhttp.status == 200)
                {
                    var str = xmlhttp.responseText;
                    showMsg(str);
                }
            }


        }


        function showMsg(str)
        {
            document.getElementById("show").innerText = str;


        }

        function createhttp()
        {
            if (window.ActiveXObject) {
                try {

                    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
                }
                catch (e)
                {
                    try {
                        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
                    }
                    catch (e)
                    { }
                }

            }
            else
                if(window.XMLHttpRequest)
                { 
                    xmlhttp=new XMLHttpRequest();
                }
            if (!xmlhttp)
            {
                alert("不能创建xmlhttp");
                return false;
            }


        }


    </script>
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Xml;

public partial class server : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string username = Request.QueryString["username"];

        if (username == "")
        {
            Response.Write("2");
            return;
        }
        else
            if (username == "cxw")
        {
            Response.Write("0");

            return;
        }

        string method = Request.QueryString["method"];
        if (method != null)
        {
            Response.Write(Request.Form["username"]);

        }



    }
}

第一个代码是html网页的js代码,第二个是服务器代码,模拟的重点在于,post方式需要设置头部,不然无法识别,猜测用form方式提交的时候是会自动添加头部还有input的ID号码,所以模拟的时候需要自己添加,这样服务器才能解析。

发布了73 篇原创文章 · 获赞 14 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/daguniang123/article/details/86027735