POST Jquery AJAX错误500

时间:2017-07-11 11:15:08

标签: javascript php

我有一个奇怪的问题。昨天一切正常。

我有一个简单的php文件,如下所示:

<?php

  if ($_SERVER['REQUEST_METHOD'] === 'POST') {

  echo json_encode(['messageType' =>
  'success','message'=>$_POST['key']);

  die();

  }

使用Ajax查询的js文件:

$.ajax({

          dataType: "json",

           type: "POST",

          url: 'get.php',

          data: {key: 'a'},

          success: function(data) {

                  alert(data.message)

          },

          error: function(data) {

          alert ('error');}

      });

当字段'key'设置为1个字符(例如'a')时,我从服务器收到错误500。但如果我把它改成至少3个字符,一切都很好。

问题在几个独立的服务器上突然发生。

2 个答案:

答案 0 :(得分:0)

错误500表示您的PHP端点应该有问题。 首先删除分号并尝试它是否有效:

<?php
    if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    echo json_encode(['messageType' =>'success','message'=>$_POST['key']);
    die();
}

答案 1 :(得分:0)

如果没有$ _SERVER ['REQUEST_METHOD']变量可用(取决于服务器),您将从一开始就获得500。由于语法原因,json_encode也无法正常工作。

<?php
  if (isset($_POST['key'])) {
  echo json_encode(array('messageType' => 'success','message'=>$_POST['key']));
  die();
  }
?>