为什么Ajax XMLHttpRequest POST方法传递参数失败了

Posted Montai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么Ajax XMLHttpRequest POST方法传递参数失败了相关的知识,希望对你有一定的参考价值。

XMLHttpRequest 可以Get,也可以Post向服务器传递参数

var xhr = new XMLHttpRequest();
$(document).ready(function(){
$("button").click(function(){

var paras = ‘firstname=zhang&lastname=san‘;
//Get 方式,直接将参数放到URL链接中
xhr.open("get","God.asp?firstname=zhang&lastname=san&toGod=Gold");
xhr.send(null);


//Post 方式,参数放在单独的请求中
xhr.open("post","God.asp");
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
xhr.send(‘firstname=zhang&lastname=san‘);

如果Post方式,需要指定内容的格式:

xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");

 

后台使用ASP

<%

dim fn
fn = Request.querystring("firstname")
if (fn = "") then
  fn = Request.Form("firstname")
end if

dim ln
ln = Request.querystring("lastname")
if (ln = "") then
  fn = Request.Form("lastname")
end if

%>

对于Get方式传参, 使用Request.querystring();

而是用Post方式传参,使用Request.Form()

 

当然,POST传递参数,有四种方式,

form-data、x-www-form-urlencoded、raw、binary

有兴趣的同学,可以再研究一下。

 

以上是关于为什么Ajax XMLHttpRequest POST方法传递参数失败了的主要内容,如果未能解决你的问题,请参考以下文章

XMLHttpRequest (Ajax) 错误

为什么Ajax XMLHttpRequest POST方法传递参数失败了

ajax学习篇XMLHttpRequest的创建和使用

原生Ajax(XMLHttpRequest)

为啥即使对于同一个站点 Ajax 请求也需要 XMLHttpRequest.withCredentials

Ajax二