Symbol.Cloud.Server.Kestrel 1.0.0.8

调用方法:
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using System.IO;

public static IHostBuilder CreateHostBuilder(string[] args) {
return Host.CreateDefaultBuilder(args).ConfigureWebHostDefaults(webBuilder => {
  webBuilder
   .UseConfiguration(
       new ConfigurationBuilder()
       .SetBasePath(Directory.GetCurrentDirectory())
       //端口修改办法
       // 1 appSetting.json 末尾加一行  "urls": "https://*:10086" 端口自己写
       // 2 通过命令行 --urls=http://*:10086
       .AddCommandLine(args)
       .Build())
     //启用http1 和 http2
     .EnableHttp1AndHttp2()
     //以下两段代码可以放到项目的Startup.cs中,本处方便说明
     //组件(服务)时刻
     .ConfigureServices((serviceProvider) => {
         //加入Mvc组件
         serviceProvider.AddControllers();
         //加入Symbol Cloud Server 组件
         serviceProvider.AddSymbolCloudServer();
     })
     //启用时刻
     .Configure((context, app) => {
       //启用调试页面
       if (context.HostingEnvironment.IsDevelopment()) {
           app.UseDeveloperExceptionPage();
       }
       //启用路由,Mvc必须使用
       app.UseRouting();
       //启用Symbol Cloud Server
       app.UseSymbolCloudServer();
       //启用Symbol Cloud Server API列表页面
       //  true 表示 监听 / 并跳转到 /apiList.do
       app.UseSymbolCloudApiList(true);

       //endpoint映射
       app.UseEndpoints(endpoints => {
         //首页,如果ApiList为false就可以打开它
         //endpoints.MapGet("/", async context => {
         //    await context.Response.WriteAsync("Hello World!");
         //});
         //Mvc路由规则
         endpoints.MapControllerRoute(name: "default", pattern: "{controller}/{action}/{id?}");
       });
     });
  });
}

请在最终运行的项目中配置服务端参数,文件名规则为:app_data/*.cloud.server.config.json,以下为参考配置:
{
 //协议配置,可以是单个对象,或数组
 //可以不填写
 "protocol": [{
   "name": "default",//名称,可选
   "data": {//数据,不填写默认为json
     "type": "json",  //类型:json,xml,treePackage,soap,custom
     "customType": null  //可选,自定义格式类型:TestAssembly.TestClass, TestAssembly
   },
   "encrypt": {//加密,不填写默认不加密
     "type": "none",//类型:none,AESStatic,custom
     "customType": null  //可选,自定义格式类型:TestAssembly.TestClass, TestAssembly
   },
   "media": {//传输介质,不填写默认为original
     "type": "original",//类型:original,base64,hex,custom
     "customType": null  //可选,自定义格式类型:TestAssembly.TestClass, TestAssembly
   }
 }],
 //服务器
 "server": {
   "name": "my.cloud",//名称,可选
   "host": "localhost",//主机:域名或IP,默认localhost
   "port": 1,//端口
   "timeout": 120,//超时:秒,默认120,可选
   "debug": true,//调试模式:默认不启用,可选
   "settings": { } //参数设置:可选
 },
 //数据库,不需要可以不写
 "database": {
   //连接参数
   //通用参数:主机、端口、数据库名称、账号、密码
   //其它参数可以写在里面,取决于提供者是否支持
   "connection": {
     "host": "localhost", //主机,可以包括端口,经test.com:1433
     "port":11433,  //可以不写,表示默认
     "name": "test",  //数据库名称
     "account": "test", //登录账号
     "password": "123456" //登录密码
   }
 },
 //客户端
 "client": [
   {
     "name": "my.manager",//名称,可选,并没有影响
     "enable": true,//状态
     "authCode": "203AFBA5816078A7BAF822C04687B3D3",//授权码
     "permissions": [ //权限列表,可选
     ],
     //外部配置,可以不写
     //可以为单个字符串,或数组
     //外部配置可重写 authCode
     //外部配置可追加(自动去重) permissions
     //路径相对于配置文件
     //支持变量 {name} {server.name}
     "config": [
       "module.*.manager.client.json",
       "{server.name}.manager.client.json"
     ]
   }
 ]
}

请在api项目中配置权限信息,命名规则以服务端配置config规则定义为准,以下为示例配置:
文件名:module.setting.manager.client.json
存储位置:app_data
{
 "permissions": [
   //系统设置.Begin
   "my.read.setting",
   "my.write.setting"
   //系统设置.End
 ]
}

Install-Package Symbol.Cloud.Server.Kestrel -Version 1.0.0.8
dotnet add package Symbol.Cloud.Server.Kestrel --version 1.0.0.8
<PackageReference Include="Symbol.Cloud.Server.Kestrel" Version="1.0.0.8" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Symbol.Cloud.Server.Kestrel --version 1.0.0.8
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

repair

  • invalid json format ;

repair

  • invalid json format ;

Release Notes

Please see https://github.com/symbolspace/Symbol.Cloud/wiki/Home for more information.

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
1.0.0.8 40 4/1/2020
1.0.0.7 68 12/26/2019
1.0.0.6 46 12/25/2019
1.0.0.5 54 12/20/2019
1.0.0.1 50 12/11/2019