2012-07-16 50 views
1

我正在做一个Ajax请求是这样的:阿贾克斯项目的限制量返回

$("#botao_pesquisar_material").click(function(){ 
    $(this).attr("disabled", "disabled"); 
    $("#material").addClass('loading'); 
    $.ajax({ 
     url: '{{ URL::base() }}/material/lista_ajax/', 
     dataType: 'json', 
     cache: false, 
     error: function(data) 
     { 
      console.log(data); 
     }, 
     success: function(data) { 
      for(x in data) 
      { 
       console.log(data[x]); 
      } 
     } 
    }); 

我的PHP方法是确定的,因为当我通过URL访问它,它返回我预期的JSON,当我把这个在本地主机上,它完美地工作,所以它不是关于特殊字符或数据的其他内容。

当我在我的服务器上运行此我有这样的:

GET http://dc.portaldeideias.com.br:8080/sergios/public/material/lista_ajax/?callback=jQuery172007718208665028214_1342725644520&_=1342725649090 500 (Internal Server Error) jquery.js:4 
f.support.ajax.f.ajaxTransport.send jquery.js:4 
f.extend.ajax jquery.js:4 
$.click.$.ajax.url 
f.event.dispatch jquery.js:3 
f.event.add.h.handle.i 

使用console.log(data)我拥有整个JSON响应,但这里是什么,是真的很奇怪:

readyState4

responseText[{"attributes":{"pk_a030_id":78,"a030_descricao":"Camur\u00e7a"},"original":{"pk_a030_id":78,"a030_descricao":"Camur\u00e7a"},"relationships":[],"exists":true,"includes":[]}]

statusTextInternal Server Error

因此,在创建请求的值,但是我收到一个Internal Server Error

+0

服务器错误日志中的实际错误是什么? – 2012-07-16 14:35:31

+0

它会为ajax调用生成日志吗? – Gerep 2012-07-16 14:36:19

+1

当然可以。从服务器的角度来看,调用的调用方式没有区别。 – 2012-07-16 14:37:15

回答

0

对不起张贴这是一个答案,但我没有所需的权限,以添加为您的问题评论。

您是否注意到javascript日志http://localhost:8080/sergios/public/material/lista_ajax/中的网址与您在屏幕截图http://dc.p[...]s.com.br:8080/sergios/public/material/lista_ajax中提供的网址不同?

难道情况是,您有两种不同版本的lista_ajax PHP方法托管在两个不同的服务器上(可能是一个远程服务器,另一个是本地服务器),这就是为什么从浏览器中看到它的工作完美无瑕,错误与Ajax测试?

还需要注意的是,如果您正在浏览托管在远程服务器上的网站,并且将ajax配置为localhost地址,则它将为您自己的计算机做出请求,而不是远程服务器(JavaScript运行于浏览器,所以localhost转换为它自己的客户端地址)。

也许情况并非如此,但值得评论。

+0

现在(发布答案后30分钟)我确实有权发表评论,但将所有这些文本转移到评论将是混乱的(并且不符合600个字符的限制)。 – pagliuca 2012-07-18 04:44:31