コード例 #1
0
ファイル: ToolbarItem.xaml.cs プロジェクト: zz110/ZeroTierOne
        private async void ToolbarItem_NewNetwork(object sender, System.Windows.RoutedEventArgs e)
        {
            if (CentralAPI.Instance.HasAccessToken())
            {
                CentralAPI     api        = CentralAPI.Instance;
                CentralNetwork newNetwork = await api.CreateNewNetwork();

                APIHandler handler = APIHandler.Instance;
                handler.JoinNetwork(this.Dispatcher, newNetwork.Id);

                string nodeId     = APIHandler.Instance.NodeAddress();
                bool   authorized = await CentralAPI.Instance.AuthorizeNode(nodeId, newNetwork.Id);
            }
        }
コード例 #2
0
        public async Task <CentralNetwork> CreateNewNetwork()
        {
            string         networkURL = Central.ServerURL + "/api/network/";
            CentralNetwork network    = new CentralNetwork();

            network.Config      = new CentralNetwork.CentralNetworkConfig();
            network.Config.Name = NetworkNameGenerator.GenerateName();
            string jsonNetwork           = JsonConvert.SerializeObject(network);
            var    postContent           = new StringContent(jsonNetwork, Encoding.UTF8, "application/json");
            HttpResponseMessage response = await client.PostAsync(networkURL, postContent);

            if (!response.IsSuccessStatusCode)
            {
                return(null);
            }

            string resContent = await response.Content.ReadAsStringAsync();

            CentralNetwork newNetwork = JsonConvert.DeserializeObject <CentralNetwork>(resContent);

            return(newNetwork);
        }