该问题更针对服务器端开发。
在编写 REST API 时,我想以这样一种方式编写它,以便桌面和移动应用程序都可以使用它。
可以看到两种可能的方法:
每个 API 都应该支持分页,并且应该将一次性获取多少数据的责任委托给客户端。因此,移动应用程序将一次性要求更少的页面,而桌面应用程序将要求更多。
单独托管的移动设备的单独 API。前端 Web 服务器可以检查用户代理(即请求的来源),如果它是移动设备,则将请求重新路由到托管移动设备 API 的服务器。
有兴趣了解有关此的更多策略。
感谢您的投入。
我会推荐更接近选项(1)的东西。如果客户端之间的主要区别在于它们一次请求的数据量,那么在 REST API 中添加某种查询参数或 HTTP 标头来指示要返回的记录数似乎是微不足道的。
依靠检查User-Agent标头可能需要您维护已知客户端用户代理的列表并与它们匹配,这将是单独 API 的额外维护成本。
我会建议(1)和(2)两者,这就是方法。
与其为移动设备本身重新构建全新的 api,不如为所有受支持的设备提供适配器。即在您的 REST API 实现之上有一个层,它呈现/指示底层服务返回适合所选移动设备的内容。
来到分页,您可以将分页参数化为上述抽象的输入。