Nếu yêu cầu không thể được phân tích cú pháp chính xác (bao gồm cả thực thể / cơ thể yêu cầu), phản hồi thích hợp là 400 Yêu cầu xấu [ 1 ].
RFC 4918 tuyên bố rằng 422 Thực thể không thể xử lý được áp dụng khi thực thể yêu cầu được hình thành tốt về mặt cú pháp, nhưng sai về mặt ngữ nghĩa. Vì vậy, nếu thực thể yêu cầu bị cắt xén (như định dạng email xấu), hãy sử dụng 400; nhưng nếu nó không có ý nghĩa (như @example.com
) sử dụng 422.
Nếu vấn đề là, như đã nêu trong câu hỏi, tên người dùng / email đã tồn tại, bạn có thể sử dụng 409 Xung đột [ 2 ] với mô tả về xung đột và gợi ý về cách khắc phục (trong trường hợp này là "chọn một tên người dùng / email khác nhau "). Tuy nhiên, trong thông số kỹ thuật như đã viết, 403 Forbidden [ 3 ] cũng có thể được sử dụng trong trường hợp này, các đối số về ủy quyền HTTP mặc dù.
412 Điều kiện tiên quyết Không thành công [ 4 ] được sử dụng khi tiêu đề yêu cầu điều kiện tiên quyết (ví dụ If-Match
) được cung cấp bởi khách hàng đánh giá là sai. Đó là, khách hàng yêu cầu một cái gì đó và cung cấp các điều kiện tiên quyết, biết rõ rằng những điều kiện tiên quyết đó có thể thất bại. 412 không bao giờ nên xuất hiện trên máy khách ngoài màu xanh và không nên liên quan đến thực thể yêu cầu mỗi se .