Commit edd29302 by Larry Ullman

Light edits

parent 2aba4346
...@@ -2,12 +2,12 @@ Error Handling ...@@ -2,12 +2,12 @@ Error Handling
============== ==============
When handling a RESTful API request, if there is an error in the user request or if something unexpected When handling a RESTful API request, if there is an error in the user request or if something unexpected
happens on the server, you may simply throw an exception to notify the user that something wrong has happened. happens on the server, you may simply throw an exception to notify the user that something went wrong.
If you can identify the cause of the error (e.g. the requested resource does not exist), you should If you can identify the cause of the error (e.g., the requested resource does not exist), you should
consider throwing an exception with a proper HTTP status code (e.g. [[yii\web\NotFoundHttpException]] consider throwing an exception along with a proper HTTP status code (e.g., [[yii\web\NotFoundHttpException]]
representing a 404 HTTP status code). Yii will send the response with the corresponding HTTP status represents a 404 status code). Yii will send the response along with the corresponding HTTP status
code and text. It will also include in the response body the serialized representation of the code and text. Yii will also include the serialized representation of the
exception. For example, exception in the response body. For example:
``` ```
HTTP/1.1 404 Not Found HTTP/1.1 404 Not Found
...@@ -30,15 +30,15 @@ The following list summarizes the HTTP status code that are used by the Yii REST ...@@ -30,15 +30,15 @@ The following list summarizes the HTTP status code that are used by the Yii REST
* `200`: OK. Everything worked as expected. * `200`: OK. Everything worked as expected.
* `201`: A resource was successfully created in response to a `POST` request. The `Location` header * `201`: A resource was successfully created in response to a `POST` request. The `Location` header
contains the URL pointing to the newly created resource. contains the URL pointing to the newly created resource.
* `204`: The request is handled successfully and the response contains no body content (like a `DELETE` request). * `204`: The request was handled successfully and the response contains no body content (like a `DELETE` request).
* `304`: Resource was not modified. You can use the cached version. * `304`: The resource was not modified. You can use the cached version.
* `400`: Bad request. This could be caused by various reasons from the user side, such as invalid JSON * `400`: Bad request. This could be caused by various actions by the user, such as providing invalid JSON
data in the request body, invalid action parameters, etc. data in the request body, providing invalid action parameters, etc.
* `401`: Authentication failed. * `401`: Authentication failed.
* `403`: The authenticated user is not allowed to access the specified API endpoint. * `403`: The authenticated user is not allowed to access the specified API endpoint.
* `404`: The requested resource does not exist. * `404`: The requested resource does not exist.
* `405`: Method not allowed. Please check the `Allow` header for allowed HTTP methods. * `405`: Method not allowed. Please check the `Allow` header for the allowed HTTP methods.
* `415`: Unsupported media type. The requested content type or version number is invalid. * `415`: Unsupported media type. The requested content type or version number is invalid.
* `422`: Data validation failed (in response to a `POST` request, for example). Please check the response body for detailed error messages. * `422`: Data validation failed (in response to a `POST` request, for example). Please check the response body for detailed error messages.
* `429`: Too many requests. The request is rejected due to rate limiting. * `429`: Too many requests. The request was rejected due to rate limiting.
* `500`: Internal server error. This could be caused by internal program errors. * `500`: Internal server error. This could be caused by internal program errors.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment