Robustness principle and optional body.

This commit is contained in:
César Gallego Rodríguez
2019-08-21 09:57:44 +02:00
parent a7ea97d1d5
commit c834bd4447
+4 -1
View File
@@ -126,15 +126,18 @@ whole lifetime of the server.
## Design Principles ## Design Principles
* TCP implementations should follow a general principle of robustness: be
conservative in what you do, be liberal in what you accept from others.
* We reuse conventions of well-established software projects, such as Docker. * We reuse conventions of well-established software projects, such as Docker.
* All requests and responses will leverage JSON as the data encoding method. * All requests and responses will leverage JSON as the data encoding method.
* The API calls responses will have two distinct parts: * The API calls responses will several parts:
* The HTTP status code (e.g., `400`, which is a bad request). The target * The HTTP status code (e.g., `400`, which is a bad request). The target
audience of this information is the client code. The client can thus use audience of this information is the client code. The client can thus use
this information to control the program flow. this information to control the program flow.
* The HTTP reason phrase. The target audience in this case is the human * The HTTP reason phrase. The target audience in this case is the human
operating the client. The human can use this information to make a operating the client. The human can use this information to make a
decision on how to proceed. decision on how to proceed.
* The body it's optional
* All successful API calls will return a representation of the *final* state * All successful API calls will return a representation of the *final* state
attained by the objects which have been addressed (either requested, set or attained by the objects which have been addressed (either requested, set or
deleted). deleted).