首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在XMLHttpRequest中发布或获取

在XMLHttpRequest中发布或获取
EN

Stack Overflow用户
提问于 2010-02-11 18:07:17
回答 5查看 3.4K关注 0票数 2

post在下面的内容中是什么意思?

代码语言:javascript
运行
复制
ajaxRequest = new XMLHttpRequest();
ajaxRequest.open("POST", "url" + queryString, true);

因为我不能使用$_POST['var']从url访问变量,但是使用$_REQUEST['var']我可以访问value..

EN

回答 5

Stack Overflow用户

发布于 2010-02-11 18:11:30

$_POST读取数据时,应该在HTTP体中传递参数,而不是使用查询字符串。

您需要发送参数,如下例所示:

代码语言:javascript
运行
复制
ajaxRequest = new XMLHttpRequest();
ajaxRequest.open("POST", "your_service.php", true);
ajaxRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
ajaxRequest.send("var=100&another_var=200");
票数 2
EN

Stack Overflow用户

发布于 2010-02-11 18:10:24

您无法通过$_POST访问参数,因为您将它们附加到URL (即,它们可以通过$_GET访问),并且不将它们作为POST数据发送。

如果您想通过POST发送参数,请看一下send()方法。

票数 1
EN

Stack Overflow用户

发布于 2010-02-11 18:16:53

POST是包含在超文本传输协议请求(如XMLHTTPRequest)中的内容。

在本例中,您将查询字符串添加到URL,这意味着它将作为GET变量传递。即使是post请求,PHP仍然可以访问作为查询字符串添加的任何GET变量。

根据您的代码,我认为您没有告诉请求应该在请求的POST部分包含哪些信息,这可以解释为什么您看不到$_POST['var']的任何内容。

但是,由于$_REQUEST['var']GETPOST中查找请求变量以及请求中传递的任何cookie,因此可以看到通过查询字符串传递的变量。

尝试回显$_GET['var'],您将看到变量就是从这里获取数据的。

如果希望以正确的方式使用POST,则不需要将请求指向具有查询字符串的URL,而是将该查询字符串定义为post数据。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2243656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档