0

我正在设计一个 RESTFUL API,并且我的一个操作中有一个花花公子:

客户端应用程序需要向服务器发出请求,以检索带有用户可用问题的 JSON(基于某些限制)。

问题是:

  • 每个用户都属于一个客户,这意味着客户只能看到属于客户用户的问题。

  • 先验,我不知道这些问题的身份。

  • 用户可能需要其他用户已有的问题。

我曾想过使用:v1/questions/next/{numberOfQuestions}

numberOfQuestions 参数是可选的(默认为 1),客户端将在服务器中获取。

哪种方法会更好?

谢谢!

4

1 回答 1

1

获取用户的所有问题

GET /v1/clients/{clientId}/users/{userId}/questions

返回:

{"questions":
  [
    {
      "id": 1,
      "title": "What is brown and barks?",
      "answered": false
    },
    {
      "id": 1,
      "title": "What is brown and makes Moo?",
      "answered": false
    },
    {
      "id": 1,
      "title": "What is brown and makes Meow?",
      "answered": true
    }
  ]
}

只为用户获取未回答的问题

GET /v1/clients/{clientId}/users/{userId}/questions?answered=false

返回:

{"questions":
  [
    {
      "id": 1,
      "title": "What is brown and barks?",
      "answered": false
    },
    {
      "id": 1,
      "title": "What is brown and makes Moo?",
      "answered": false
    }
  ]
}

只为用户获取一个未回答的问题

GET /v1/clients/{clientId}/users/{userId}/questions?answered=false&limit=1

返回:

{"questions":
  [
    {
      "id": 1,
      "title": "What is brown and barks?",
      "answered": false
    }
  ]
}
于 2013-06-11T13:56:55.467 回答