gpt4 book ai didi

c# - 如何使请求主体可选

转载 作者:行者123 更新时间:2023-12-05 06:18:10 26 4
gpt4 key购买 nike

我有以下 POST 函数:

public async Task<BaseResponse> Post([FromBody] BodyParams content)
{
var option = content.TopOnly;
return await RunHttpMethodAsync(option, _worker.Lookup);
}

这是 BodyParams 类:

public class BodyParams
{
public bool TopOnly { get; set; }
}

这按预期工作。但是,我想将 BodyParams 内容 设为可选,如果未提供,则将 TopOnly 设置为 true。我试过:

public class BodyParams
{
public bool TopOnly { get; set; } = true;
}

然后不提供 body ,但我得到以下返回:

{
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.13",
"title": "Unsupported Media Type",
"status": 415,
"traceId": "00-305034a9723b9a4f94e0601c6ecc3587-b67fe89deb8e644f-00"
}

我在我的 var option 上设置了一个断点,但我什至没有到达那个位置。

我的问题是,如何使请求正文对于 POST 是可选的?

最佳答案

415 Unsupported Media Type - 表示请求实体具有服务器或资源不支持的媒体类型。

如果你使用Postman,设置这个然后重试 enter image description here

此外,为了使它更简单,您可以使用

public async Task<BaseResponse> Post([FromBody] TopOnly? topOnly = true)

关于c# - 如何使请求主体可选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61368962/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com