graphjin 试用

以前大概介绍过graphjin的特性,以下是一个试用

注意需要docker&&docker-compose 安装

安装

go get github.com/dosco/graphjin

创建app

graphjin new app

效果

 

 

使用

注意需要注释关于resolvers 的部分(有异常)

 
cd app
docker-compose run api db:setup
docker-compose up

 

 

代码使用

  • main.go
package main
import (
    "context"
    "database/sql"
    "fmt"
    "log"
    "github.com/dosco/graphjin/core"
    _ "github.com/jackc/pgx/v4/stdlib"
)
func main() {
    db, err := sql.Open("pgx", "postgres://postgres:postgres@localhost:5432/app_development")
    if err != nil {
        log.Fatal(err)
    }
    sg, err := core.NewGraphJin(nil, db)
    if err != nil {
        log.Fatal(err)
    }
    query := `
    query {
        users{
          id
          full_name
          email
        }
      }`
    ctx := context.Background()
    ctx = context.WithValue(ctx, core.UserIDKey, 1)
    res, err := sg.GraphQL(ctx, query, nil)
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(string(res.Data))
}
 

效果

 

 

说明

graphjin 的自动graphql 编译sql 是一个很不错的功能,类似的hasura也是使用类似的技术,但是graphjin使用起来更加简单

参考资料

https://github.com/dosco/graphjin
https://graphjin.com/docs/home/

posted on   荣锋亮  阅读(407)  评论(0编辑  收藏  举报

编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2020-01-09 nodejs fork 子进程创建任务以及简单的prometheus 监控
2019-01-09 Singer 学习十三 发现模式
2019-01-09 Singer 学习十二 指南
2019-01-09 Singer 学习十一 配置以及状态管理
2019-01-09 Singer 学习十 同步模式
2019-01-09 Singer 学习九 运行&&开发taps、targets (四 开发target)
2019-01-09 Singer 学习八 运行&&开发taps、targets (三 开发tap)

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示