【问题标题】:How to POST single object with vibe.d REST client generator如何使用 vibe.d REST 客户端生成器发布单个对象
【发布时间】:2016-06-15 09:35:39
【问题描述】:

我尝试使用带有此类代码的 vibe.d 客户端生成器发送带有某些对象的帖子:

class App
{
    string id;
    string cmd;
}

interface IntREST
{
    @path("/apps")
    @method(HTTPMethod.POST)
    App postApp(App app);
}

和 vibe.d 生成带有这样嵌套的 json

{
    "app": {
        "id": "appid",
        "cmd": "command"
    }
}

但我需要发送json而不像嵌套

{
    "id": "appid",
    "cmd": "command"
}

【问题讨论】:

  • Vibe 根据方法签名生成 json。您可以尝试将 App postApp(string id, string cmd) 作为您的方法,这会生成您期望的 Json,但是您需要在实现中将其转换为“App”对象。
  • 基本上,App 类的字段多于两个,因此将它们全部传递给函数并不方便。
  • 我在 Vibe.d 问题跟踪器上询问了 similar question,您应该考虑在那里打开增强请求 ;-)

标签: d vibed


【解决方案1】:

使用 vibe.d 0.8.0,您可以使用@bodyParam 标记方法以获得所需的结果:

@bodyParam(app)
App postApp(App app);

【讨论】:

    猜你喜欢
    • 2012-02-15
    • 2015-01-28
    • 1970-01-01
    • 2017-08-06
    • 1970-01-01
    • 2018-02-03
    • 1970-01-01
    • 2022-12-13
    • 1970-01-01
    相关资源
    最近更新 更多