随笔分类 -  GraphQL

摘要:介绍 本文来讲基础功能篇的最后一篇,上传文件。 处理文件上传其实不是 GraphQL 服务器关注的问题,这也是 GraphQL over HTTP 规范没有提及它的原因。但是在新应用程序的开发过程中,我们不得不以某种方式处理文件, 我们来看下如何处理文件。 正文 我们写一个文件上传接口 public 阅读全文
posted @ 2023-03-16 17:06 初久的私房菜 阅读(11790) 评论(0) 推荐(0) 编辑
摘要:介绍 文本说一下全局状态,这个东西还是比较有意思,他就像我们系统使用的时候业务中比如要拿 当前用户ID 、租户数据什么的。 正文 我们使用拦截器(Interceptor)来做一个Global State的例子说明 首先我们写一个拦截器,从认证信息中我们读取UserId并写入。 public clas 阅读全文
posted @ 2023-02-28 20:59 初久的私房菜 阅读(11608) 评论(0) 推荐(0) 编辑
摘要:介绍 文本说一下认证和授权,因为GraphQL的特殊性他不能直接使用微软提供的授权来做 正文 关于认证我这边没有自己写,我采用了okta提供的第三方认证服务, builder.Services.AddAuthentication(options => { options.DefaultAuthent 阅读全文
posted @ 2023-02-28 20:43 初久的私房菜 阅读(11914) 评论(0) 推荐(0) 编辑
摘要:介绍 拦截器方面因为我是用的也不是很多,没有特别好的例子能举例。 正文 我们将一些理论关于中间件和拦截器分别在什么情况下使用 GraphQL 中间件常见的使用场景: 身份验证:GraphQL 中间件可以用于身份验证,例如验证授权令牌或使用 OpenID Connect 对 GraphQL 请求进行身 阅读全文
posted @ 2023-02-21 22:17 初久的私房菜 阅读(12106) 评论(0) 推荐(0) 编辑
摘要:介绍 查询、添加、修改我们已经演示了,我们来看下订阅。 订阅大家可以理解为音乐软件, 我们用户 => 订阅音乐频道 <= 服务发送新的音乐通知到频道。 有新的通知进入频道后,频道会推送给客户。 这个东西就和Rxjs一样,在Angular客户端用起来也是一个效果。 正文 修改PostMutation. 阅读全文
posted @ 2023-02-16 13:19 初久的私房菜 阅读(11467) 评论(0) 推荐(0) 编辑
摘要:介绍 本节来看一下GraphQL中间件的写法 正文 新增TimeoutMiddleware中间件,GraphQL中间件没有约束接口。该示例中间件的主要作用是检查 GraphQL 不包含在HashSet中的hashvalue接口,就使用 配置的ExecutionTimeout时间来定义接口超时。超时后 阅读全文
posted @ 2023-02-16 13:19 初久的私房菜 阅读(11861) 评论(0) 推荐(0) 编辑
摘要:介绍 Query的部分我们讲完了,现在讲一下Mutate(就是操作增修删) 本节讲一下修改,删除就不讲了 正文 public record UpdatePostInput(string PostId,string Title, string Author); public record Update 阅读全文
posted @ 2023-02-13 20:45 初久的私房菜 阅读(12361) 评论(0) 推荐(0) 编辑
摘要:介绍 Query的部分我们讲完了,现在讲一下Mutate(就是操作增修删) 本节讲一下新增 正文 新建Requests文件夹 public record AddPostInput(string Title, string Author); public record AddPostPayload(P 阅读全文
posted @ 2023-02-13 20:44 初久的私房菜 阅读(12022) 评论(0) 推荐(0) 编辑
摘要:介绍 Query返回数据我们已经看完了,这里我们将如果筛选数据,给查询加上条件 正文 修改Program builder.Services .AddGraphQLServer() .AddQueryType<PostQuery>() .AddMongoDbFiltering() .AddMongoD 阅读全文
posted @ 2023-02-13 20:42 初久的私房菜 阅读(11720) 评论(0) 推荐(0) 编辑
摘要:介绍 本节我们给Query加上排序功能. 正文 修改Program builder.Services .AddGraphQLServer() .AddQueryType<PostQuery>() .AddMongoDbFiltering() .AddMongoDbSorting() .AddMong 阅读全文
posted @ 2023-02-13 20:42 初久的私房菜 阅读(11436) 评论(0) 推荐(0) 编辑
摘要:介绍 本节我们给Query加上分页. 正文 修改Program builder.Services .AddGraphQLServer() .AddQueryType<PostQuery>() .AddMongoDbFiltering() .AddMongoDbSorting() .AddMongoD 阅读全文
posted @ 2023-02-13 20:42 初久的私房菜 阅读(108) 评论(0) 推荐(0) 编辑
摘要:介绍 上一节我们简单搭建了项目的结构 本节我们来实现一个简单Query查询 正文 新建PostQuery.cs, 新建Core文件夹存放 public class PostQuery { public IExecutable<Post> GetPosts([Service] DbContext db 阅读全文
posted @ 2023-02-11 17:01 初久的私房菜 阅读(614) 评论(0) 推荐(0) 编辑
摘要:介绍 上一节我们实现一个简单Query查询,从监控信息上面来看我们调用数据使用的是全表检索。这一节我看来看下如何实现按需检索 正文 修改Program builder.Services .AddGraphQLServer() .AddQueryType<PostQuery>() .AddMongoD 阅读全文
posted @ 2023-02-11 17:01 初久的私房菜 阅读(102) 评论(0) 推荐(0) 编辑
摘要:介绍 讲一下GraphQL的各种特性和如何使用,让大家感受下。 CODE4NOTHING大佬之前在博客园更新了一些GraphQL的知识是和EF的结合使用,文章使用的实体模型来自于CODE4NOTHING大佬。 本节主要将项目的结构简单搭建下 正文 新建一个空的.Net6 项目,不需要引入Swagge 阅读全文
posted @ 2023-02-11 16:14 初久的私房菜 阅读(172) 评论(0) 推荐(0) 编辑
摘要:介绍 Twitter上有很多关于“GraphQL与tRPC”的讨论,用于为您的应用程序构建现代后端。GraphQL 近年来作为 REST 事实上的继承者而变得流行起来,而 tRPC 解决了全栈应用程序中的端到端安全问题。这就像将苹果与橙子进行比较。 GraphQL 是一种查询语言,tRPC 是一种库 阅读全文
posted @ 2023-02-01 20:13 初久的私房菜 阅读(833) 评论(0) 推荐(0) 编辑
摘要:介绍 GraphQL 基本介绍 文章修改和引用与:https://camiinthisthang.hashnode.dev/everything-i-learned-in-my-1st-year-as-a-swe-graphql#heading-overfetching 正文 REST API RE 阅读全文
posted @ 2023-02-01 20:03 初久的私房菜 阅读(126) 评论(0) 推荐(0) 编辑
摘要:介绍 简单说一下 GraphQL 与 REST API的的对比 文章修改和引用与:https://avocadev.hashnode.dev/graphql-vs-rest-putting-it-to-rest 正文 使用对比 看看下面的示例中的 JSON。这是对SpaceX API的REST调用的 阅读全文
posted @ 2023-02-01 20:03 初久的私房菜 阅读(185) 评论(0) 推荐(0) 编辑

作者:初久的私房菜
好好学习,天天向上
返回顶部小火箭
好友榜:
如果愿意,把你的博客地址放这里
张弛:https://blog.zhangchi.fun/