一飞开源,介绍创意、新奇、有趣、实用的开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术社区平台。致力于打造活力开源社区,共建开源新生态!
一、开源项目简介
全网唯一并且免费的运行时界面创建API接口的项目,并且生成接口文档,真正的运时行创建【 低代码 】【 线上建表 】【线上建接口】【线上生成接口文档】【线上测试接口】【 热插拔 】【 超级API 】【 云ORM框架 】【云API】【 zero 】
使用MIT开源协议
是一款.NET中间件,让你无需写任何代码也能实现CRUD,也可以发布成exe独立使用于非.NET用户 创建接口
查看创建后的接口
在线数据库和表在线创建API接口 、接口文档和接口调试。
通过下载EXE运行。
Rezero.Api
新建一个.NET6+ WEB API 只需要注入一行代码就能使用 Rezero API
/***对现有代码没有任何影响***/
//注册:注册超级API服务
builder.Services.AddReZeroServices(api =>
{
//启用超级API
api.EnableSuperApi();//默认载体为sqlite ,有重载可以配置数据库
});
//写在builder.Build前面就行只需要一行
var app = builder.Build();
启动项目直接访问地址就行了 http://localhost:5267/rezero
//注册:注册超级API服务
builder.Services.AddReZeroServices(api =>
{
//启用超级API
api.EnableSuperApi(new SuperAPIOptions()
{
InterfaceOptions = new InterfaceOptions()
{
//AuthorizationLocalStorageName说明:
//localStorage["jwt"]="token";
//如果localStorage["jwt"]有token那么本地html页面下接口请求都会带上token
//一般用于前端和后端不跨端口和域名的情况
//如果跨端口或者域名看 【 4.5标题 】写法
AuthorizationLocalStorageName = "jwt",
//授权拦截器
SuperApiAop = new JwtAop()
}
}); ;
});
public class JwtAop : DefaultSuperApiAop
{
public async override Task OnExecutingAsync(InterfaceContext aopContext)
{
//注意:html页面的url里面加token=xxx可以让内部接口也支持jwt授权
var authenticateResult = await aopContext.HttpContext.AuthenticateAsync(JwtBearerDefaults.AuthenticationScheme);
if (!authenticateResult.Succeeded)
{
throw new Expception("Unauthorized");
}
await base.OnExecutingAsync(aopContext);
}
public async override Task OnExecutedAsync(InterfaceContext aopContext)
{
await base.OnExecutedAsync(aopContext);
}
public async override Task OnErrorAsync(InterfaceContext aopContext)
{
await base.OnErrorAsync(aopContext);
}
}
只要在url加上model=small 就会隐藏头部菜单和左边的菜单
html页面的url里面加token=xxx可以让内部接口也支持jwt授权
效果图如下
访问一飞开源:https://code.exmay.com/