如何从Laravel5中的json类型响应中获取值

gua*_*yue 6 php json laravel

这是一个函数返回:

return response()->json(['aa'=>'bbb']);  
Run Code Online (Sandbox Code Playgroud)

我打印功能响应,结果如下:

JsonResponse {#186
 #jsonOptions: 0
 #data: "{"aa":"bbb"}"
 #callback: null
 #encodingOptions: 15
 +headers: ResponseHeaderBag {#187
 #computedCacheControl: array:1 [
  "no-cache" => true
]
Run Code Online (Sandbox Code Playgroud)

我以前从未见过它,我怎样才能获得价值bbb?谢谢

gua*_*yue 12

我已经解决了这个问题,使用getData()可以读取json.

$a = response()->json(['aa'=>'bbb']);  
$a->getData()->aa;
Run Code Online (Sandbox Code Playgroud)

  • 你是我的英雄。 (2认同)

luk*_*ter 5

你看到的是response()->json()产生的对象.这实际上并不是客户会得到的.因为Laravel会在发回之前将其转换为字符串.

在客户端上,您可以将其用作JSON.这是jQuery ajax的一个例子:

$.ajax({
    url: '/your/route'
}).done(function(data){
    alert(data.aa);  // alerts bbb
});
Run Code Online (Sandbox Code Playgroud)