示例#1
0
        public void getReqStream(IAsyncResult result)
        {
            try
            {
                HttpWebRequest request    = (HttpWebRequest)result.AsyncState;
                Stream         postStream = request.EndGetRequestStream(result);


                CollabrifyRequest_PB req_pb = new CollabrifyRequest_PB();
                req_pb.request_type = CollabrifyRequestType_PB.CREATE_SESSION_REQUEST;
                MemoryStream ms = new MemoryStream();
                Serializer.SerializeWithLengthPrefix <CollabrifyRequest_PB>(ms, req_pb, PrefixStyle.Base128, 0);

                Request_CreateSession_PB ls_pb = new Request_CreateSession_PB();
                ls_pb.account_gmail = "*****@*****.**";
                ls_pb.access_token  = "82763BDBCA";
                ls_pb.session_tag.Add("none");
                ls_pb.session_name            = "this is a test session5";
                ls_pb.owner_display_name      = "Jack";
                ls_pb.owner_gmail             = "*****@*****.**";
                ls_pb.owner_notification_id   = "Jack";
                ls_pb.owner_notification_type = NotificationMediumType_PB.COLLABRIFY_CLOUD_CHANNEL;
                MemoryStream ms2 = new MemoryStream();
                Serializer.SerializeWithLengthPrefix <Request_CreateSession_PB>(ms2, ls_pb, PrefixStyle.Base128, 0);


                byte[] byteArr = ms.ToArray();
                postStream.Write(byteArr, 0, byteArr.Length);
                System.Diagnostics.Debug.WriteLine("writing ms... size: " + byteArr.Length.ToString());

                byteArr = ms2.ToArray();
                postStream.Write(byteArr, 0, byteArr.Length);
                System.Diagnostics.Debug.WriteLine("writing ms2... size: " + byteArr.Length.ToString());

                postStream.Close();

                request.BeginGetResponse(new AsyncCallback(GetResponseCallback), request);
            }
            catch (WebException e)
            {
                System.Diagnostics.Debug.WriteLine("web exception");
            }
        }