Ajax数据未发送,但正在请求文件

时间:2019-01-29 06:07:00

标签: javascript php ajax get xmlhttprequest

我正在尝试使用带有xhttprequest的ajax构建聊天系统。我请求文件,文件响应,但是获取数据未到达该文件。我尝试即使在发布后也将其发送,但仍然无法将数据发送到php文件。 这是请求文件的功能:

    function refreshChat(){
  if(username != ""){

    var date = new Date();
    var timezone_offset = date.getTimezoneOffset();

    $(".messages-container").empty();

    var xhttp = new XMLHttpRequest();
    xhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            $(".messages-container").html(this.responseText);
       }
    };
    xhttp.open("GET", "/chat/ajax_requests/get_messages.php", true);
    xhttp.send("receiver="+username+"&sender="+chat_with+"&limit="+limit+"&timezone_offset_minutes="+timezone_offset);
  }
}

请求的文件具有以下内容:

  $receiver = $_GET['receiver'];
  $sender = $_GET['sender'];
  $limit = $_GET['limit'];
  $timezone_offset_minutes  = $_GET['timezone_offset_minutes'];

怎么了?

1 个答案:

答案 0 :(得分:1)

所以我在w3schools上发现了这个: send(string):将请求发送到服务器。用于POST请求 send():将请求发送到服务器。用于GET请求

我建议您像下面这样将来自send函数的字符串添加到url中:

xhttp.open("GET", "/chat/ajax_requests/get_messages.php?"+"receiver="+username+"&sender="+chat_with+"&limit="+limit+"&timezone_offset_minutes="+timezone_offset, true);
xhttp.send();

然后您将send函数用于获取请求。

链接到文档:https://www.w3schools.com/xml/ajax_xmlhttprequest_create.asp