Exemplo n.º 1
0
        private async Task <OperateResult <string> > ReadFromServer(NetworkWebApiBase webApiBase, HttpMethod httpMethod, string url, string body)
        {
            url = $"http://{webApiBase.IpAddress}:{webApiBase.Port}/{ (url.StartsWith( "/" ) ? url.Substring( 1 ) : url) }";
            try
            {
                using (HttpRequestMessage request = new HttpRequestMessage(httpMethod, url))
                {
                    if (httpMethod != HttpMethod.Get)
                    {
                        request.Content = new StringContent(body);
                    }
                    if (!string.IsNullOrEmpty(textBox3.Text))
                    {
                        request.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(Encoding.UTF8.GetBytes(textBox3.Text + ":" + textBox4.Text)));
                    }

                    using (HttpResponseMessage response = await webApiBase.Client.SendAsync(request))
                        using (HttpContent content = response.Content)
                        {
                            response.EnsureSuccessStatusCode( );
                            return(OperateResult.CreateSuccessResult(await content.ReadAsStringAsync( )));
                        }
                }
            }
            catch (Exception ex)
            {
                return(new OperateResult <string>("Read Failed:" + ex.Message));
            }
        }
Exemplo n.º 2
0
        private async void Button1_Click(object sender, EventArgs e)
        {
            try
            {
                webApiClient    = new NetworkWebApiBase(textBox1.Text, int.Parse(textBox2.Text), textBox3.Text, textBox4.Text);
                panel2.Enabled  = true;
                button1.Enabled = false;
                button2.Enabled = true;

                await MqttRpcApiRefresh(treeView1.Nodes[0]);
            }
            catch (Exception ex)
            {
                MessageBox.Show("Input Data is wrong! please int again!" + Environment.NewLine + ex.Message);
            }
        }
Exemplo n.º 3
0
        private async Task <MqttRpcApiInfo[]> ReadMqttRpcApiInfo(NetworkWebApiBase webApiBase)
        {
            string url = $"http://{webApiBase.IpAddress}:{webApiBase.Port}/Apis";

            try
            {
                using (HttpRequestMessage request = new HttpRequestMessage(new HttpMethod("HSL"), url))
                    using (HttpResponseMessage response = await webApiBase.Client.SendAsync(request))
                        using (HttpContent content = response.Content)
                        {
                            response.EnsureSuccessStatusCode( );
                            string result = await content.ReadAsStringAsync( );

                            return(JArray.Parse(result).ToObject <MqttRpcApiInfo[]>( ));
                        }
            }
            catch
            {
                return(null);
            }
        }
Exemplo n.º 4
0
        private async Task <OperateResult <string> > ReadFromServer(NetworkWebApiBase webApiBase, HttpMethod httpMethod, string url, string body)
        {
            url = $"{(checkBox1.Checked ? "https" : "http")}://{webApiBase.IpAddress}:{webApiBase.Port}/{ (url.StartsWith( "/" ) ? url.Substring( 1 ) : url) }";
            //textBox8.Text = url;
            try
            {
                using (HttpRequestMessage request = new HttpRequestMessage(httpMethod, url))
                {
                    if (httpMethod != HttpMethod.Get)
                    {
                        request.Content = new StringContent(body);
                        string contentType = comboBox2.SelectedItem.ToString( );
                        if (contentType != "none")
                        {
                            request.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue(contentType);
                        }
                    }
                    if (!string.IsNullOrEmpty(textBox3.Text))
                    {
                        request.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(Encoding.UTF8.GetBytes(textBox3.Text + ":" + textBox4.Text)));
                    }

                    using (HttpResponseMessage response = await webApiBase.Client.SendAsync(request))
                    {
                        using (HttpContent content = response.Content)
                        {
                            response.EnsureSuccessStatusCode( );
                            return(OperateResult.CreateSuccessResult(await content.ReadAsStringAsync( )));
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                //HslCommunication.BasicFramework.SoftBasic.ShowExceptionMessage( ex );
                return(new OperateResult <string>(ex.Message));
            }
        }
Exemplo n.º 5
0
        private async Task <MqttRpcApiInfo[]> ReadMqttRpcApiInfo(NetworkWebApiBase webApiBase)
        {
            string url = $"{(checkBox1.Checked ? "https" : "http")}://{webApiBase.IpAddress}:{webApiBase.Port}/Apis";

            try
            {
                using (HttpRequestMessage request = new HttpRequestMessage(new HttpMethod("HSL"), url))
                {
                    using (HttpResponseMessage response = await webApiBase.Client.SendAsync(request))
                        using (HttpContent content = response.Content)
                        {
                            response.EnsureSuccessStatusCode( );
                            string result = await content.ReadAsStringAsync( );

                            return(JArray.Parse(result).ToObject <MqttRpcApiInfo[]>( ));
                        }
                }
            }
            catch
            {
                //HslCommunication.BasicFramework.SoftBasic.ShowExceptionMessage( ex );
                return(null);
            }
        }