JQuery的AJAX抛出404在现有的网址(JQuery AJAX throws 404 for

2019-09-24 05:24发布

我使用jQuery AJAX调用笨功能:

$.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
  } 

等等...

在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行的链接。

我糊涂了...

编辑:继@保罗的建设性的意见我已改为GET,的确要求,页面被发现。 什么会导致这样一个不起眼的行为?

一个步骤:当我空数据对象(像这样:数据:{}),该函数即使POST请求中发现

Answer 1:

正如保罗已经指出的,这可能是由于得到一个错误/ POST限制。 请检查您的服务器代码,如果你支持这个端点POST请求。



Answer 2:

而不是使用的base_url()请使用site_url() 我也经历过同样的问题。

一个简单的例子可以如下给出,其中一个Ajax jQuery的过帐观看。

 $.post("<?php echo site_url('message/add') ?>", {message: msg}, function() {
        $('#content').load("<?php echo site_url('message/view/ajax') ?>");
        $('#message').val('');
    });

留言/添加在这里,你可以猜到功能在控制器中定义。 正如我先用PHP处理,我搜索了一个很好的例子。 我不仅在PHP的消息,而且在笨。 在许多实例中,所实现的形式是如“BASE_URL +消息/添加”。 这可能是可能的,笨版本导致这个错误,因为所有的人都被之前的2.X.书面版本 无论如何,如果你想有一个现成的代码,请查看以下链接,它为我工作!

jQuery的AJAX笨例子



Answer 3:

同样的问题把我难倒。 它原来是一个Apache权限问题。 我与我的托管服务提供商检查,他们证实,固定它,并告诉我如何安装运行每隔一小时再显适当权限的cron作业。 他们还建议我用FileZila而不是WinSCP赋予,并为我提供的设置自动重置重新上传文件的权限。



文章来源: JQuery AJAX throws 404 for an existing url