本文整理汇总了Golang中github.com/goadesign/goa.Context.RawPayload方法的典型用法代码示例。如果您正苦于以下问题:Golang Context.RawPayload方法的具体用法?Golang Context.RawPayload怎么用?Golang Context.RawPayload使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/goadesign/goa.Context
的用法示例。
在下文中一共展示了Context.RawPayload方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1:
Describe("Get", func() {
It(`returns "", false if not initialized`, func() {
p := ctx.Get("foo")
Ω(p).Should(Equal(""))
})
})
Describe("GetMany", func() {
It("returns nil if not initialized", func() {
Ω(ctx.GetMany("foo")).Should(BeNil())
})
})
Describe("RawPayload", func() {
It("returns nil if not initialized", func() {
Ω(ctx.RawPayload()).Should(BeNil())
})
})
Context("with a request response", func() {
const appName = "foo"
var app goa.Service
const resName = "res"
const actName = "act"
var handler, unmarshaler goa.Handler
const reqBody = `"body"`
const respStatus = 200
var respContent = []byte("response")
var handleFunc goa.HandleFunc
var rw http.ResponseWriter
var request *http.Request
示例2:
})
})
})
Context("with different payload types", func() {
content := []byte(`{"hello": "world"}`)
decodedContent := map[string]interface{}{"hello": "world"}
BeforeEach(func() {
r.Header.Set("Content-Type", "application/json")
r.Body = ioutil.NopCloser(bytes.NewReader(content))
r.ContentLength = int64(len(content))
})
It("should work with application/json and load properly", func() {
Ω(ctx.RawPayload()).Should(Equal(decodedContent))
})
Context("with an empty Content-Type", func() {
BeforeEach(func() {
delete(r.Header, "Content-Type")
})
It("defaults to application/json and loads properly for JSON bodies", func() {
Ω(ctx.RawPayload()).Should(Equal(decodedContent))
})
})
Context("with a Content-Type of 'application/octet-stream' or any other", func() {
BeforeEach(func() {
s.SetDecoder(goa.JSONDecoderFactory(), false, "*/*")