Javascript Ajax请求返回成功,但服务器端方法未运行
我正在进行一个ajax调用,试图获得一个类的方法。问题是我没有从类的方法中得到任何结果,但是ajax调用的success方法正在运行,就好像一切正常一样 这是我的ajax请求:Javascript Ajax请求返回成功,但服务器端方法未运行,javascript,php,ajax,Javascript,Php,Ajax,我正在进行一个ajax调用,试图获得一个类的方法。问题是我没有从类的方法中得到任何结果,但是ajax调用的success方法正在运行,就好像一切正常一样 这是我的ajax请求: ; $("#downloadBtn").click(function (event) { event.preventDefault(); event.stopPropagation(); $.ajax({ url: 'allClients.php', type: '
;
$("#downloadBtn").click(function (event) {
event.preventDefault();
event.stopPropagation();
$.ajax({
url: 'allClients.php',
type: 'post',
data: {action: 'downloader'},
complete: function (result) {
console.log('success');
},
error: function () {
console.log('Error');
}
});
});
我的中间php文件(在有值的$\u POST[action]上调用方法的文件):
很抱歉,如果这是重复的,但我不这么认为,我的url是正确的(文件在根文件夹中,js文件在web/js/downloader.js中),我在控制台中获得了成功,但我没有运行该方法。ajax调用的完整方法中的'result'变量返回了什么?这可能会提供更多线索,说明它认为一切都按预期工作的地方/原因。您只需检查allClients.php文件中的结果。例如:if(result=='1'){console.log(success);}和其他方法。首先:将读取'action'的函数放在try/catch语句中:。然后,在catch语句中,使用var_dump()或回显错误消息(如果实例或其他方面有问题,它只会通知您)。最后,使用console.log()生成ajax,以便查看。另外,确保将$myHttpHandlerClient作为对象的实例(我看不到任何声明)。Ajax调用调试起来相当棘手,这就是为什么我认为try/catch和console.log()值得尝试的原因,最好的方法是如果您的响应是JSON,这将是在控制台中最容易阅读的方法。您可以很容易地将一些数据放入数组f.ex$结果['success']=true$结果['data']=$使用一些令人惊奇的方法返回一些数据;然后:echo json_encode($result)。谢谢大家,我实际上得到了回应。当我控制台记录变量result时,我从php文件中得到了var_转储。在ajax调用的complete方法中,“result”var返回了什么?这可能会提供更多线索,说明它认为一切都按预期工作的地方/原因。您只需检查allClients.php文件中的结果。例如:if(result=='1'){console.log(success);}和其他方法。首先:将读取'action'的函数放在try/catch语句中:。然后,在catch语句中,使用var_dump()或回显错误消息(如果实例或其他方面有问题,它只会通知您)。最后,使用console.log()生成ajax,以便查看。另外,确保将$myHttpHandlerClient作为对象的实例(我看不到任何声明)。Ajax调用调试起来相当棘手,这就是为什么我认为try/catch和console.log()值得尝试的原因,最好的方法是如果您的响应是JSON,这将是在控制台中最容易阅读的方法。您可以很容易地将一些数据放入数组f.ex$结果['success']=true$结果['data']=$使用一些令人惊奇的方法返回一些数据;然后:echo json_encode($result)。谢谢大家,我实际上得到了回应。当控制台记录变量结果时,我从php文件中获得了var_转储。
<?php
require_once 'common.php';
if(isset($_POST['action'])){
var_dump('was here');
$myHttpHandlerClient->downloader();
} else {
var_dump('here');
$myHttpHandlerClient->viewAllClients($dataTransferClass);
}
class HttpHandlerClient extends HttpHandlerAbstract
{
private $clientsService;
public function __construct(clientsServiceInterface $clientsService)
{
$this->clientsService = $clientsService;
}
public function downloader(/*DataTransferClass $dataClass*/)
{
var_dump('here2');
exit();
}
}