Здравствуйте! Вопрос скорее всего глупый, но я новичек и надеюсь вы меня прости. 
Задача. Получить от клиента POST запрос (внутри SOAP) и отправить его веб-сервису. (Если я правильно понимаю и называю вещи своими именами я создаю прокси, который пересылает мой запрос веб-сервису, все это я делаю для того, что бы запросить контент с другого домена).
| Код | public string GetString(Stream InputStream) { StreamReader sr = null; sr = new StreamReader(InputStream); Char[] read = new Char[1000]; int count = sr.Read(read, 0, 1000); string strOut = ""; while (count > 0) { String str = new String(read, 0, count); strOut += str; count = sr.Read(read, 0, 1000); } return strOut; } public void ProcessRequest (HttpContext context) {
HttpRequest _request = context.Request;
Stream newStream = null; string requestBody = GetStringStream(_request.InputStream);
WebRequest request = WebRequest.Create(SERVICE_URL); request.Credentials = CredentialCache.DefaultCredentials; request.Method = "POST"; request.ContentType = "text/xml"; byte[] SomeBytes = null; SomeBytes = Encoding.UTF8.GetBytes(requestBody); request.ContentLength = SomeBytes.Length; newStream = request.GetRequestStream(); newStream.Write(SomeBytes, 0, SomeBytes.Length); newStream.Close(); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); string responseFromServer = GetStringStream(response.GetResponseStream());
string content_type = response.ContentType; response.Close();
context.Response.ContentType = content_type; context.Response.Write(responseFromServer);
}
|
|