rohan0793 / jsend
为Laravel 5应用程序定义JSend响应宏
This package is not auto-updated.
Last update: 2024-09-28 18:25:39 UTC
README
jsend
这是一个简单的composer包,用于从Laravel 5应用程序中发出JSend响应。
关于JSend的更多信息,请参阅此指南
安装
通过composer要求包
composer require rohan0793/jsend
将服务提供者添加到app.php配置文件中的提供者数组中
RC\JSend\ResponseMacroServiceProvider::class,
基本示例
return response()->jsend( $data = ['foo', 'bar'], $presenter = null, $status = 'success', $message = 'This is a JSend Response', $code = 200 );
输出
{ "data": [ "foo", "bar" ], "status": "success", "message": "This is a JSend Response" }
资源获取示例
return response()->resource_fetched( $data = ['foo', 'bar'] );
输出
{ "status": "success", "message": "Resource Fetched Successfully", "data": [ "foo", "bar" ] }
资源获取宏定义是为了方便和可读性。它将直接调用底层的JSend宏。消息、状态和代码将自动填充为success
、Resource Fetched Successfully
和200
。这在您有许多用于获取不同资源的路由时,可以用来移除重复的代码。
资源更新示例
return response()->resource_updated( $data = ['foo', 'bar'] );
{ "status": "success", "message": "Resource Updated Successfully", "data": [ "foo", "bar" ] }
与resource_fetched
类似,我们还有resource_updated
。消息、状态和代码将自动填充为success
、Resource Updated Successfully
和200
。
资源创建示例
return response()->resource_updated( $data = ['foo', 'bar'] );
{ "status": "success", "message": "Resource Created Successfully", "data": [ "foo", "bar" ] }
与resource_fetched
类似,我们还有resource_created
。消息、状态和代码将自动填充为success
、Resource Created Successfully
和201
。
资源删除示例
return response()->resource_deleted( $data = ['foo', 'bar'] );
resource_deleted
有点特别。它将输出代码204 No Content
。根据HTTP代码规范,它将没有任何输出。
JSend错误示例
return response()->jsend_error( new \Exception('Some Exception'), $message = null, $code = null );
{ "status": "error", "message": "Some Exception", "data": null }
最后,我们有jsend_error
宏,它基本上用于在发生错误时进行响应。它接受异常作为第一个参数。它将输出异常本身的代码和消息。如果传递了自定义消息和代码,它们将被输出。
展示者
除了带有消息和代码的基本响应宏之外,此包还支持展示者。您可以构建自己的展示者。包将自动在传递的展示者上调用present()
方法。建议的方法是使用The PHP League的Fractal包。此包提供了非常强大的数据转换和展示功能。文档详尽且易于阅读和理解。