|
|
|
|
|
by nrdvana
1438 days ago
|
|
501 is for unrecognized methods. As I was about to say this would then be incorrect usage, it occurred to me that you could in fact use this for an RPC system if the procedure name were used as the HTTP Method. So instead of GET /api/v1/employee/100
Accept: application/json
You sent GetEmployee /1000
X-API-VERSION: 1
Accept: application/json
Then if the actual procedure name was "get_employees", the correct response to this request would be 501, and /1000 referring to a non-existent employee would be a 404.If making an RPC and restricting yourself to the known HTTP methods, the closest is GET /api/v1/employee?id=100
Accept: application/json
which would return 404 only if the controller endpoint didn't exist, and would return whatever the application wanted if userid=100 didn't exist, such as 422 or 200 with a response indicating non-existence. It would be just like a local procedure call that could return a false value, or throw an exception instead of returning a value. |
|