Запрос к aspx страничке... КАК?
От: Аноним  
Дата: 21.07.05 13:17
Оценка:
Есть aspx страничка
Мне надо сделать запрос из приложения на дотнете (любым методом):


HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(УРЛ);
HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();



это я уже знаю
но как на этой самой страничке создать приемник этого запроса?
например я хочу передать Строку... просто строку... в метод странички что бы она ёё(строку) сохранила на диск(сервера)

как мне это реализовать?
зы: веб сервисы пока не предлагать
Запрос к aspx страничке... КАК?
От: Аноним  
Дата: 21.07.05 13:25
Оценка:
Возьми да залезь на страничке в Application.Context.Request и у тебя на руках полный запрос в парсеном виде..


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Запрос к aspx страничке... КАК?
От: Аноним  
Дата: 21.07.05 13:25
Оценка:
Возьми да залезь на страничке в Application.Context.Request и у тебя на руках полный запрос в парсеном виде..


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re: Запрос к aspx страничке... КАК?
От: mogadanez Чехия  
Дата: 21.07.05 13:32
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Есть aspx страничка

А>Мне надо сделать запрос из приложения на дотнете (любым методом):


А>
А>HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(УРЛ);
А>HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
А>



А>это я уже знаю

А>но как на этой самой страничке создать приемник этого запроса?
А>например я хочу передать Строку... просто строку... в метод странички что бы она ёё(строку) сохранила на диск(сервера)

Либо Post или Get

в случае GET ты запрашиваешь не УРЛ, а УРЛ?str=твоя_строка
на странице просто смотришь Request.QueryString["str"] и сохраняешь

в случае POST почти тоже самое, тока данные передаются не в урле, а "следом" за запросом.
запрашивать их также, тока через Forms[] коллекцию
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Re[2]: Запрос к aspx страничке... КАК?
От: Аноним  
Дата: 21.07.05 13:43
Оценка:
Здравствуйте, mogadanez, Вы писали:

M>Здравствуйте, <Аноним>, Вы писали:


А>>Есть aspx страничка

А>>Мне надо сделать запрос из приложения на дотнете (любым методом):


А>>
А>>HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(УРЛ);
А>>HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
А>>



А>>это я уже знаю

А>>но как на этой самой страничке создать приемник этого запроса?
А>>например я хочу передать Строку... просто строку... в метод странички что бы она ёё(строку) сохранила на диск(сервера)

M>Либо Post или Get


M>в случае GET ты запрашиваешь не УРЛ, а УРЛ?str=твоя_строка

M>на странице просто смотришь Request.QueryString["str"] и сохраняешь

M>в случае POST почти тоже самое, тока данные передаются не в урле, а "следом" за запросом.

M>запрашивать их также, тока через Forms[] коллекцию

супер
получилось
а можно подробнее с постом?
Re[3]: Запрос к aspx страничке... КАК?
От: mogadanez Чехия  
Дата: 21.07.05 13:54
Оценка:
Вот пример.... с сохранением сессии между запросами
метод Request_Post
ддя того чтобы доступать на странице к данным через Forms[], post_body должно быть формата
key1=val1&key2=val2
но в приципе, если оно буде просто сплошной строкой, его тоже можно вытащить но это более запарно



public class HTTPClient

        {
        private Cookie Sessid;
        private string[ ] proxys;
        private string sess_cookie_name;
        private int p_index = 0;
        private bool use_proxy = false;
        public HTTPClient( bool use_proxy, string session_cookiename )
            {
            this.use_proxy = use_proxy;
            this.sess_cookie_name = session_cookiename;
            if ( use_proxy )
                {
                ArrayList p = new ArrayList();
                using ( StreamReader r = new StreamReader( @"c:\p.txt" ) )
                    {
                    while ( r.Peek() > -1 )
                        p.Add( r.ReadLine() );
                    }
                proxys = (string[ ]) p.ToArray( typeof ( string ) );
                }
            }

        public void ClearCookie( )
            {
            Sessid = null;
            }

        public void set_next_proxy( )
            {
            if ( p_index < proxys.Length - 1 )
                p_index++;
            }

        public HttpWebResponse Request( string sUrl )
            {
            return Request( sUrl, true );
            }

        public HttpWebResponse Request_Post( string path, string post_body )
            {
            return Request_Post( path, post_body, true );
            }

        public HttpWebResponse Request_Post( string path, string post_body, bool bAutoRedirect )
            {
            try
                {
                HttpWebRequest httpWebRequest = (HttpWebRequest) WebRequest.Create( path );
                if ( use_proxy )
                    {
                    string[ ] prx = proxys[ p_index ].Trim().Split( ':' );
                    WebProxy prox = new WebProxy( prx[ 0 ], Int32.Parse( prx[ 1 ] ) );
                    httpWebRequest.Proxy = prox;
                    }

                httpWebRequest.AllowAutoRedirect = bAutoRedirect;
                httpWebRequest.CookieContainer = new CookieContainer();
                if ( Sessid != null )
                    {
                    httpWebRequest.CookieContainer.Add( Sessid );
                    }
                httpWebRequest.Method = "POST";
                httpWebRequest.ContentType = "application/x-www-form-urlencoded";
                byte[ ] ByteQuery = Encoding.ASCII.GetBytes( post_body );
                httpWebRequest.ContentLength = ByteQuery.Length;
                Stream QueryStream = httpWebRequest.GetRequestStream();
                QueryStream.Write( ByteQuery, 0, ByteQuery.Length );
                QueryStream.Close();
                HttpWebResponse httpWebResponse = (HttpWebResponse) httpWebRequest.GetResponse();
                httpWebResponse.Cookies = httpWebRequest.CookieContainer.GetCookies( httpWebRequest.RequestUri );
                if ( httpWebResponse.Cookies[ sess_cookie_name ] != null )
                    {
                    Sessid = httpWebResponse.Cookies[ sess_cookie_name ];
                    }
                return httpWebResponse;
                }
            catch ( WebException ex )
                {
                return ex.Response as HttpWebResponse;
                }
            }

        public HttpWebResponse Request( string sUrl, bool bAutoRedirect )
            {
            try
                {
                HttpWebRequest httpWebRequest = (HttpWebRequest) WebRequest.Create( sUrl );
                if ( use_proxy )
                    {
                    string[ ] prx = proxys[ p_index ].Split( ':' );
                    WebProxy prox = new WebProxy( prx[ 0 ], Int32.Parse( prx[ 1 ] ) );
                    httpWebRequest.Proxy = prox;
                    }

                httpWebRequest.AllowAutoRedirect = bAutoRedirect;
                httpWebRequest.CookieContainer = new CookieContainer();
                if ( Sessid != null )
                    {
                    httpWebRequest.CookieContainer.Add( Sessid );
                    }

                HttpWebResponse httpWebResponse = (HttpWebResponse) httpWebRequest.GetResponse();
                httpWebResponse.Cookies = httpWebRequest.CookieContainer.GetCookies( httpWebRequest.RequestUri );
                if ( httpWebResponse.Cookies[ sess_cookie_name ] != null )
                    {
                    Sessid = httpWebResponse.Cookies[ sess_cookie_name ];
                    }
                return httpWebResponse;
                }
            catch ( WebException ex )
                {
                return ex.Response as HttpWebResponse;
                }
            }
        }
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Re[3]: Запрос к aspx страничке... КАК?
От: Аноним  
Дата: 21.07.05 14:03
Оценка:
вот тут есть примерчик http://blogs.gotdotnet.ru/personal/Nisus/PermaLink.aspx?guid=d8d2ae0c-d7b1-4aab-b7d7-7acb699767bf
en passant


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re[4]: Запрос к aspx страничке... КАК?
От: Аноним  
Дата: 21.07.05 14:23
Оценка:
а почему когда я пытаюсь сделать обычный запрос к аспх страничке на локалхосте
вылетает exc?

The remote server returned an error: (401) Unauthorized.
Re[5]: Запрос к aspx страничке... КАК?
От: mogadanez Чехия  
Дата: 21.07.05 14:28
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>а почему когда я пытаюсь сделать обычный запрос к аспх страничке на локалхосте

А>вылетает exc?

А>
А>The remote server returned an error: (401) Unauthorized.
А>



Возможно у вас в этом приложении стоит Windows Authentication?
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Re[6]: Запрос к aspx страничке... КАК?
От: Аноним  
Дата: 22.07.05 06:46
Оценка:
Здравствуйте, mogadanez, Вы писали:

M>Здравствуйте, <Аноним>, Вы писали:


А>>а почему когда я пытаюсь сделать обычный запрос к аспх страничке на локалхосте

А>>вылетает exc?

А>>
А>>The remote server returned an error: (401) Unauthorized.
А>>



M>Возможно у вас в этом приложении стоит Windows Authentication?



вот что нашел в конфиге и aspx и websсервиса

<authentication mode="Windows"/>

причет когда я все копирую на хостинг то aspx доходит а запрос метода вебсервиса нет
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.