.Net6 + GraphQL + MongoDb文件操作
介绍
本文来讲基础功能篇的最后一篇,上传文件。
处理文件上传其实不是 GraphQL 服务器关注的问题,这也是 GraphQL over HTTP 规范没有提及它的原因。但是在新应用程序的开发过程中,我们不得不以某种方式处理文件, 我们来看下如何处理文件。
正文
我们写一个文件上传接口
public async Task<bool> UploadFileAsync(IFile file)
{
var fileName = file.Name;
var fileSize = file.Length;
await using Stream stream = file.OpenReadStream();
return true;
// We can now work with standard stream functionality of .NET
// to handle the file.
}
builder.Services
.AddType<UploadType>()
graphql调用语句,这里 graphql的上传文件按钮需要登录后才能生效。
mutation ($file: Upload!) {
uploadFile(input: {file:$file}) {
boolean
}
}
{
"file": "xxxxx.jpg"
}
结语
本系列主要将GraphQL的使用,示例项目不能应用于生产,后续发一些GraphQL库出来讲解生产中的实际应用
联系作者:加群:867095512 @MrChuJiu