我在同一个域中通过 AJAX 向服务器发送数据,但服务器没有收到任何内容。
js文件
var data = {
rating : result,
message : message
};
var request = new XMLHttpRequest();
request.open('POST', '/test.php', true);
request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');
request.send(data);
通过单击元素(不是表单,不是提交按钮)完成发送
star[i].addEventListener('click', selectStar);
.php 文件
$data = $_POST["data"];
$data 为空
有趣的是,如果我包含 jquery 一切正常
$.ajax({
type: 'POST',
url: '/test.php',
data: {data:data}
});
试过:
- 在谷歌和这里搜索。我发现的所有东西 - 我试过了,但没有帮助。
- 删除其余的 js 代码并没有帮助。
- 不是将对象而是字符串传输到服务器 - 没有任何变化。
- 更改服务器上的协议(http 和 https)和 php 版本(从 4 到 7) - 没有结果。
我已经在这上面待了几天了。我很乐意提供建议和帮助。谢谢!
欢迎来到堆栈溢出。
在
XMLHttpRequest您发送的选项中并在代码中
$.ajax- 发送像这样获取服务器上的值:
或者
像这样发送:
并检查发生了什么: