我有以下DTO,其中URI应该是api/logs?verbose=
,其中verbose
可以是true
或false
。
[Route("/api/logs", "GET")]
public class GetLogs
{
public bool Verbose { get; set; }
}
我的服务是:
public object Get(GetLogs getLogs)
{
//For brevity
return getLogs;
}
我看到元数据文档中生成的示例提到了POST而不是我明确设置的GET。
POST /json/oneway/GetLogs HTTP/1.1
Host: localhost
Content-Type: application/json
Content-Length: length
{"Verbose":false}
我该如何解决这个问题?
答案 0 :(得分:1)
据我所知,这只是一个样本。字面上不要采用“POST / json / oneway / GetLogs HTTP / 1.1”。您应该使用同一页面中前面显示的实际路由端点,这可能是:
此服务可使用以下路由:
GET / api / logs
在我的ServiceStack项目中,它们都是相同的 - 样本是POST,即使可用路由只是:GET,OPTIONS
我做了一些搜索,这似乎是在课堂上硬编码:ServiceStack.Metadata.OperationControl
所以你可以接受当前版本“无法做到”。或者弄清楚如何覆盖或修补OperationControl模板渲染。