json - 使用 SuperGraph 作为库的 JSON 响应中的“数据”字段
问题描述
使用SuperGraph作为库,我发现 JSON 响应不是以:"data"
.
例子:
{
"players": [...]
}
代替:
{
"data": {
"players": [...]
}
}
我正在使用这段代码:
func main() {
sg, err := core.NewSuperGraph(nil, sb)
r := chi.NewRouter()
r.Group(func(r chi.Router) {
r.Post(config.ApiEndpoint, myHandler(sg))
})
StartServer(r)
}
type reqBody struct {
Query string `json:"query"`
}
func sgHandler(sg *core.SuperGraph, next http.Handler) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
var rBody reqBody
bodyBytes, _ := ioutil.ReadAll(r.Body)
_ = r.Body.Close(
r.Body = ioutil.NopCloser(bytes.NewBuffer(bodyBytes))
err := json.NewDecoder(bytes.NewBuffer(bodyBytes)).Decode(&rBody)
if err != nil {
http.Error(w, "Error parsing JSON request body", 400)
}
res, err := sg.GraphQL(ctx, rBody.Query, nil)
if err == nil {
result, _ := json.Marshal(res.Data) // IS THIS WRONG?
_, err = w.Write(result)
}
}
}
是我的错吗?
这是错的吗?result, _ := json.Marshal(res.Data)
?
也许我需要全部元帅res
?不是更重吗?
解决方案
推荐阅读
- c# - UTF-8 != 带有 NuSoap 和 C# 的 utf-8
- angular - Angular6 Promise 触发了两次
- indexing - 尝试使用索引修改字符串时出现语法错误
- azure - 在网络聊天中测试机器人不会返回回复。检查了许多可能的问题
- html - TypeError:无法读取未定义的属性“加入”
- python - 使用 Anaconda 在 Jupyter 笔记本中的 Scikitlearn
- c# - c# Selenium IJavaScriptExecutor 向下滚动不起作用
- python - Django 中是否有保存用户上传文件历史记录的功能?
- android - android无法解析符号R
- javascript - 在javascript中创建对象时如何保存动态键引用?