private void RegisterMyself(MySelfInfo myself, string[] apilist = null) { string url = string.Concat(this.RegisterUrl, PathRegister); StringBuilder data = new StringBuilder(); data.AppendFormat("directory={0}&", myself.Directory); data.AppendFormat("url={0}&", myself.Url); data.AppendFormat("ip={0}&", myself.Ip); data.AppendFormat("weight={0}&", myself.Weight); data.AppendFormat("status={0}&", myself.Status); data.AppendFormat("description={0}&", myself.Description); if (apilist != null && apilist.Length > 0) { data.AppendFormat("apiList={0}", string.Join(",", apilist)); } try { var request = HttpRequestClient.Request(url, "POST", false); request.ContentType = "application/x-www-form-urlencoded"; request.Send(data).GetBodyContent(true); } catch(System.Exception e) { LogManager.Error("注册失败", e.Message); } }
static void Main(string[] args) { string registerUrl = ConfigurationManager.AppSettings["registerUrl"]; string redisServer = ConfigurationManager.AppSettings["redisServer"]; int redisDatabaseIndex = int.Parse(ConfigurationManager.AppSettings["redisDatabaseIndex"]); RedisDirectoryBuilder builder = new RedisDirectoryBuilder(registerUrl, redisServer, redisDatabaseIndex); var myselfInfo = new MySelfInfo() { Description = "Demo提供者", Directory = "DemoProvider", Ip = "127.0.0.1:4001", Status = 1, Url = "http://127.0.0.1:4001", Weight = 100 }; builder.Build(myselfInfo, new string[0], new string[2] { "test/api1", "test/api2" }); Console.ReadLine(); }
static void Main(string[] args) { string registerUrl = ConfigurationManager.AppSettings["registerUrl"]; string redisServer = ConfigurationManager.AppSettings["redisServer"]; int redisDatabaseIndex = int.Parse(ConfigurationManager.AppSettings["redisDatabaseIndex"]); RedisDirectoryBuilder builder = new RedisDirectoryBuilder(registerUrl, redisServer, redisDatabaseIndex); var myselfInfo = new MySelfInfo() { Description = "Demo消费者", Directory = "DemoConsumer", Ip = "192.168.1.1:4000", Status = 1, Url = "http://192.168.1.1:3000", Weight = 200 }; builder.Build(myselfInfo, new string[2] { "DemoProvider", "ProviderAndConsumer" }); Console.ReadLine(); }
public void Build(MySelfInfo myself, string[] usedService = null, string[] apiList = null) { this.RegisterMyself(myself, apiList); this.RegisterRelation(myself.Directory, usedService); this.Pull(usedService); }