3

(オンライン)RESTサービスからデータを取得するための簡単な方法を書きました:

    public async Task<Object> GetTask()
    {
        try
        {
            using (HttpClient client = new HttpClient())
            {
                client.BaseAddress = new Uri("http://111.111.111.111:8080/");
                HttpResponseMessage result = await client.GetAsync("ABC/CDE/getsomeinfo");
                if (result.IsSuccessStatusCode)
                {
                    //Deserialize
                }
            }
        }
        catch (Exception ex)
        {
            Debug.WriteLine("Error" + ex);
        }

        return null;
    }

UWPでこれを実行するたびに、キャッチ例外が発生します:

このエラー コードに関連付けられたテキストが見つかりませんでした。

サーバーとの接続を確立できませんでした

HResult 2147012867

クライアントを内部ネットワークのrestapiに接続しようとしています。フォームでは、同じコードが正しく機能しています。

4

1 に答える 1

0

これを試して

HttpResponseMessage response;

public async Task<string> webserviceResponse(string HttpMethod)
{      
    // check internet connection is available or not   

    if (NetworkInterface.GetIsNetworkAvailable() == true)
    {
       // CancellationTokenSource cts = new CancellationTokenSource(2000); // 2 seconds
        HttpClient client = new HttpClient();
        MultipartFormDataContent mfdc = new MultipartFormDataContent();
        mfdc.Headers.ContentDisposition = new ContentDispositionHeaderValue("form-data");
        string GenrateUrl = "your url";

        if (HttpMethod == "POST")
        {
            response = await client.PostAsync(GenrateUrl, mfdc);

        }
        else if (HttpMethod == "PUT")
        {
            response = await client.PutAsync(GenrateUrl, mfdc);
        }
        else if (HttpMethod == "GET")
        {
            response = await client.GetAsync(GenrateUrl);
        }
        var respon = await response.Content.ReadAsStringAsync();
        string convert_response = respon.ToString();
        return convert_response;
    }
    else
    {
        return "0";
    }
}
于 2016-10-14T09:20:03.500 に答える