为什么API将所有属性值作为字符串返回到我的json中

时间:2017-04-03 21:47:06

标签: php json laravel

在我之前托管在godaddy上的服务器上,我的API在移动到digitalocean时返回字符串就好了,当它返回json时,我的Api表现不一样。

在Godaddy我使用php版本 PHP 5.5.38 ,而在digitalocean中我使用 PHP 5.5.9-1

这是Godaddy的json回复:

{"message":"Success","success":true,"status":200,"data":{"id":520,"username":"rbreier","email":"rbreier@indiana.edu","user_level_id":3,"active":0,"deleted":0,"remember_token":null,"login_counter":0,"student":{"id":249,"user_id":520,"class_id":29,"team_id":35,"gender":"f","english_language":1,"phone":"34434","company_ownership":null,"customer_id":"cus_7iJQ6Mi5qFA0wx","team":{"id":35,"group_number":11,"amount":56146500,"class_id":29,"role_id":1,"total_score":3.76,"presentation_scores_teacher":null,"classes":{"id":29,"class":"F317","session_id":10,"time":"11:30:00","begin_date":null,"location":"\/","team_formed":1,"students_formed":1,"active":0}}}}}

这是来自digitalocean:

{"message":"Success","success":true,"status":200,"data":{"id":"520","username":"rbreier","email":"rbreier@indiana.edu","user_level_id":"3","active":"0","deleted":"0","remember_token":null,"login_counter":"1","student":{"id":"249","user_id":"520","class_id":"29","team_id":"35","gender":"f","english_language":"1","phone":"34434","company_ownership":null,"customer_id":"cus_7iJQ6Mi5qFA0wx","team":{"id":"35","group_number":"11","amount":"56146500","class_id":"29","role_id":"1","total_score":"3.76","presentation_scores_teacher":null,"classes":{"id":"29","class":"F317","session_id":"10","time":"11:30:00","begin_date":null,"location":"\/","team_formed":"1","students_formed":"1","active":"0"}}}}}

digitalocean的第二个回应让我在我的客户端应用程序上遇到问题,所以如果有人知道这里有什么问题我会很感激吗?

这是我的api代码:

$user = User::with('student', 'student.team', 'student.team.classes')->findOrFail(Auth::user()->id); if ($user) { return response()->json(['message' => 'Success', 'success' => true, 'status' => 200, 'data' => $user]); } else { return response()->json(['message' => 'Not found', 'success' => false, 'status' => 404, 'data' => null]); }

我在两台主机上使用相同版本的Laravel 5.0。

1 个答案:

答案 0 :(得分:1)

你的模型中有cast your attributes整数吗?您应该考虑升级Laravel版本。