【问题标题】:laravel4 Response::json(array()); not work in hostinglaravel4 响应::json(array());不适用于托管
【发布时间】:2014-03-17 02:05:29
【问题描述】:

托管
我尝试按照示例http://laravel.com/docs/responses#special-responses

来响应托管中的 json
return Response::json(array('name' => 'Steve', 'state' => 'CA'));

但响应头是

和响应:重新加载页面以获取源:httx://xxxx.com 所以,我试试 echo Response::json(array(...)); 结果是

我必须使用它工作:

header('Content-Type: application/json');
echo json_encode($data);

我的本地

我的本​​地主机Response::json(array()); 工作正常!相同的版本 我该怎么办? 请帮帮我。

【问题讨论】:

  • 你能用
  • 主机在本地使用 PHP 版本 5.4.15 和我一样。我认为它适用于 laravel
  • 试试这个:return Response::json($data, 200, array('Content-Type' => 'application/json'));
  • 我试过了。但效果不佳。
  • 可能与Varnish有关,但我不能说如何确定它是否是以及如何解决问题。

标签: php json laravel response


【解决方案1】:

当你使用 Response::json($yourarray);您将发送带有 json 数据的标头。

如果您没有使用 jquery 或 javascript 来接受响应,而是尝试将数据传递给另一个方法,请尝试:

返回 json_encode($yourarray)

【讨论】:

    【解决方案2】:

    这可能会解决问题:

    return Response::json(array('name' => 'Steve', 'state' => 'CA'))
                   ->header('Content-Type', 'application/json');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-19
      • 1970-01-01
      • 1970-01-01
      • 2021-09-19
      • 2010-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多