假设我有一个"GET"端点,它接收两个参数startdate和enddate。
现在我们都知道开始日期有时可以为空,前端将构造如下的请求
Accounts/Statements/filter?startdate=null&enddate=xxxxxx.xxx.xxZ
我的问题是:
什么是构建API端点的最佳方法.(以c#方式)
API函数如下所示:
[HttpGet("Accounts/Statements/filter")]
public async Task<IActionResult> GetStatementsFilter(DateTime startDate, DateTime endDate)
在这种情况下,如果startDate为空,则将接收为01/01/0001
或者
[HttpGet("Accounts/Statements/filter")]
public async Task<IActionResult> GetStatementsFilter(string startDate, string endDate)
在本例中,startDate将接收一个字符串null,我需要小心地将其转换为Date对象以便以后使用,或者将其视为null。
或者
[HttpGet("Accounts/Statements/filter")]
public async Task<IActionResult> GetStatementsFilter([FromBody] DateObj dateObj)
在这种情况下,要求前端更改并发送http请求主体中的参数,以便我们可以使用DateTime?作为参数。
你们觉得怎么样?
1条答案
按热度按时间dtcbnfnu1#
我会建议做这样的事情
因此在本例中,startDate对于前端是可选的,您可以轻松地检查startDate是否为null。