我正在使用类似于以下代码的端点

type TestService struct {
    gorest.RestService `root:"/test/"`
    testPost    gorest.EndPoint `method:"POST" path:"/testPost/" postdata:"map[string]string"`
}

我获取并处理了发布的数据,并希望将有效负载返回给调用客户端,即成功/错误和一条消息。

我无法从文档中确定如何实现此目的,按照GET端点添加output标记并从函数返回任何内容都会失败,并显示以下错误;



是否可以将有效负载返回给客户端?如果不能,我能否将成功/失败重定向到另一个端点?

最佳答案

因此,我找到了一种方法,以防有人遇到类似问题。

看来您可以使用ResponseBuilder的实例直接编写代码,因此我创建了一个新的响应生成器,将内容类型设置为json并写出我的响应!

func(serv DocumentService) TestPost(PostData map[string]string){
    fmt.Printf("%+v", PostData)
    rb := serv.ResponseBuilder()
    rb.AddHeader("Content-Type", "application/json")
    rb.Write([]byte("{type:'info', msg:'Success!'}"))
}

碰巧的是,您可以使用类似的方法通过不同的方法提供输出;
serv.ResponseBuilder().Created("http://localhost:8787/orders-service/items/"+string(i.Id))

我在http://code.google.com/p/gorest/上找到的

关于rest - 如何从goREST POST端点返回消息?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22943214/

10-13 02:18