本文整理汇总了Golang中code/google/com/p/goweb/goweb.Context类的典型用法代码示例。如果您正苦于以下问题:Golang Context类的具体用法?Golang Context怎么用?Golang Context使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Context类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Update
func (cr *DataController) Update(id string, cx *goweb.Context) {
cx.ResponseWriter.Header().Set("Access-Control-Allow-Origin", "*")
cx.ResponseWriter.Header().Set("Access-Control-Allow-Headers", "*")
cx.ResponseWriter.Header().Set("Access-Control-Allow-Methods", "PUT")
data := new(dataContainer)
data.Model = cx.PathParams["model"]
errs := cx.Fill(&data.Data)
if errs != nil {
log.Print(errs)
cx.RespondWithError(500)
} else {
bucket, berr := couchbase.GetBucket("http://localhost:8091/", "default", "mking.me")
if berr != nil {
log.Print(berr)
cx.WriteResponse(data, http.StatusInternalServerError)
} else {
data.Data["id"] = id
errr := bucket.Set(id, 0, data)
if errr != nil {
log.Print(errr)
cx.WriteResponse(data.Data, http.StatusInternalServerError)
} else {
cx.WriteResponse(data.Data, http.StatusOK)
}
}
}
}
示例2: Options
// for OPTIONS /api
func (cr *DataController) Options(cx *goweb.Context) {
log.Print("wat")
cx.ResponseWriter.Header().Set("Access-Control-Allow-Headers", "*")
cx.ResponseWriter.Header().Set("Access-Control-Allow-Methods", "GET,POST,PUT,DELETE,OPTIONS")
cx.RespondWithOK()
}
示例3: ReadMany
func (cr *ManifestController) ReadMany(cx *goweb.Context) {
cx.ResponseWriter.Header().Set("Access-Control-Allow-Origin", "*")
bucket, err := couchbase.GetBucket("http://localhost:8091/", "default", "mking.me")
if err != nil {
log.Print(err)
}
rv := make(map[string]interface{})
rv["stale"] = false
vres, _ := bucket.View("manifest", "all", rv)
if len(vres.Rows) > 0 {
cx.WriteResponse(vres.Rows[0].Value, http.StatusOK)
} else {
cx.WriteResponse(make([]string, 0), http.StatusOK)
}
}
示例4: Delete
func (cr *DataController) Delete(id string, cx *goweb.Context) {
cx.ResponseWriter.Header().Set("Access-Control-Allow-Origin", "*")
cx.ResponseWriter.Header().Set("Access-Control-Allow-Headers", "*")
cx.ResponseWriter.Header().Set("Access-Control-Allow-Methods", "DELETE")
bucket, err := couchbase.GetBucket("http://localhost:8091/", "default", "mking.me")
if err != nil {
log.Print(err)
cx.WriteResponse("", http.StatusInternalServerError)
}
rv := new(dataContainer)
bucket.Get(id, &rv)
derr := bucket.Delete(id)
if derr != nil {
log.Print(derr)
cx.WriteResponse(rv.Data, http.StatusInternalServerError)
} else {
cx.WriteResponse(rv.Data, http.StatusOK)
}
}
示例5: Read
func (cr *ManifestController) Read(id string, cx *goweb.Context) {
bucket, err := couchbase.GetBucket("http://localhost:8091/", "default", "mking.me")
if err != nil {
log.Print(err)
}
rv := new(manifestData)
gerr := bucket.Get(id, &rv)
if gerr != nil {
cx.WriteResponse(rv, http.StatusNotFound)
} else {
if rv != nil {
cx.WriteResponse(rv, http.StatusOK)
} else {
cx.WriteResponse(rv, http.StatusNotFound)
}
}
}
示例6: Read
func (cr *DataController) Read(id string, cx *goweb.Context) {
cx.ResponseWriter.Header().Set("Access-Control-Allow-Origin", "*")
cx.ResponseWriter.Header().Set("Access-Control-Allow-Headers", "*")
cx.ResponseWriter.Header().Set("Access-Control-Allow-Methods", "GET")
bucket, err := couchbase.GetBucket("http://localhost:8091/", "default", "mking.me")
if err != nil {
log.Print(err)
}
rv := new(dataContainer)
gerr := bucket.Get(id, &rv)
if gerr != nil {
cx.WriteResponse(rv.Data, http.StatusNotFound)
} else {
if rv != nil {
cx.WriteResponse(rv.Data, http.StatusOK)
} else {
cx.WriteResponse(rv.Data, http.StatusNotFound)
}
}
}
示例7: ReadMany
func (cr *DataController) ReadMany(cx *goweb.Context) {
cx.ResponseWriter.Header().Set("Access-Control-Allow-Origin", "*")
cx.ResponseWriter.Header().Set("Access-Control-Allow-Headers", "*")
cx.ResponseWriter.Header().Set("Access-Control-Allow-Methods", "GET")
bucket, err := couchbase.GetBucket("http://localhost:8091/", "default", "mking.me")
if err != nil {
log.Print(err)
}
rv := make(map[string]interface{})
rv["stale"] = false
vres, verr := bucket.View(cx.PathParams["model"], "all", rv)
if verr != nil {
cx.WriteResponse(make([]string, 0), http.StatusNotFound)
} else {
if len(vres.Rows) > 0 {
cx.WriteResponse(vres.Rows[0].Value, http.StatusOK)
} else {
cx.WriteResponse(make([]string, 0), http.StatusOK)
}
}
}
示例8: UpdateMany
func (cr *DataController) UpdateMany(cx *goweb.Context) {
cx.RespondWithStatus(http.StatusNotImplemented)
}
示例9: Fill
func (p *Product) Fill(cx *goweb.Context) {
cx.Fill(&p)
}
示例10: DeleteMany
func (cr *ManifestController) DeleteMany(cx *goweb.Context) {
cx.RespondWithStatus(http.StatusNotImplemented)
}