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);
            }
           
        }
Ejemplo n.º 2
0
        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();



        }
Ejemplo n.º 3
0
        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);
 }