我正在使用 Jquery ajax 调用 CodeIgniter 函数:
$.ajax({
type: "POST",
dataType:'json',
beforeSend: function() {
$("#opc").addClass("opacity");
$("#searching").show();
},
url: "<?php echo base_url(); ?>search/get_results",
data: {
'ns_pos':ns_pos,
'NSPlaceDomainID':activity,
'DistrictID':area,
'NSAssociationID':referer,
'Title':text,
'SettlementID':settlement,
'NoOpinion':$("input[name=NoOpinion]").is(":checked"),
'SpecialCharacteristics':ns_attr
}
ETC...
在 Chrome 控制台中,我收到以下消息:
POST http://mattat.org.il/ci/index.php/search/get_results 404 (Not Found)
响应预览是:
Not Found
The requested URL /ci/index.php/search/get_results was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
但是,这个函数确实存在,当我简单地将链接粘贴到 URL 行时就很明显了。
我很困惑...
编辑:根据@paul 的建设性评论,我已将请求更改为 GET,并且确实找到了该页面。什么会导致这种晦涩难懂的行为?
再一步:当我清空数据对象(如:data: {})时,即使使用 POST 请求也能找到该函数