How to use HttpWebRequest (.NET) asynchronously?

后端 未结 8 1669
天涯浪人
天涯浪人 2020-11-22 13:56

How can I use HttpWebRequest (.NET, C#) asynchronously?

8条回答
  •  谎友^
    谎友^ (楼主)
    2020-11-22 14:30

    public void GetResponseAsync (HttpWebRequest request, Action gotResponse)
        {
            if (request != null) { 
                request.BeginGetRequestStream ((r) => {
                    try { // there's a try/catch here because execution path is different from invokation one, exception here may cause a crash
                        HttpWebResponse response = request.EndGetResponse (r);
                        if (gotResponse != null) 
                            gotResponse (response);
                    } catch (Exception x) {
                        Console.WriteLine ("Unable to get response for '" + request.RequestUri + "' Err: " + x);
                    }
                }, null);
            } 
        }
    

提交回复
热议问题