Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [Lập trình Web & Backend] RELATION: Quan hệ user — posts

    REST — Quan hệ tài nguyên (nested resource)

    API có quan hệ một-nhiều: GET /users/{id}/posts. ADDUSER <name> tạo user (id tự tăng). ADDPOST <userId> <title> tạo post thuộc user đó (postId tự tăng riêng). Nếu user không tồn tại trả 404. POSTS <userId> liệt kê các post của user theo postId tăng dần.

    Ví dụ I/O

    Input:

    ADDUSER Tom
    ADDPOST 1 Hello
    ADDPOST 1 World
    POSTS 1
    

    Output:

    {"status":201,"item":{"id":1,"name":"Tom"}}
    {"status":201,"item":{"id":1,"userId":1,"title":"Hello"}}
    {"status":201,"item":{"id":2,"userId":1,"title":"World"}}
    {"status":200,"count":2,"posts":[{"id":1,"userId":1,"title":"Hello"},{"id":2,"userId":1,"title":"World"}]}
    
    • Định dạng đầu vào:

      Mỗi dòng: ADDUSER <name>, ADDPOST <userId> <title>, POSTS <userId>.

    • Ràng buộc đầu vào:

      Số lệnh ≤ 300.

    • Định dạng đầu ra:

      ADDUSER/ADDPOST in 201 kèm item; ADDPOST với user không tồn tại in 404; POSTS in {"status":200,"count":<n>,"posts":[...]}.

    Ví dụ:

    Đầu vào:

    ADDUSER Tom
    ADDPOST 1 Hello
    ADDPOST 1 World
    POSTS 1
    

    Đầu ra:

    {"status":201,"item":{"id":1,"name":"Tom"}}
    {"status":201,"item":{"id":1,"userId":1,"title":"Hello"}}
    {"status":201,"item":{"id":2,"userId":1,"title":"World"}}
    {"status":200,"count":2,"posts":[{"id":1,"userId":1,"title":"Hello"},{"id":2,"userId":1,"title":"World"}]}

    Giải thích:

    Tạo user 1, hai post thuộc user 1; POSTS 1 trả cả hai post theo id tăng dần.

    Đang tải editor...