Обработайте необработанное содержание Запроса HTTP

Тот же синтаксис используется для объявления функции - например, функция object, не принимая параметров и возвращая MyObject

7
задан Stu Thompson 17 September 2008 в 08:05
поделиться

5 ответов

Что-то вроде этого поместило в Вашем onload событии.

if (Request.RequestType == "POST")
{
    using (StreamReader sr = new StreamReader(Request.InputStream))
    {
        if (sr.ReadLine() == "SUCCESS")
        {
            /* Do your parsing here */
        }
    }
}

Обратите внимание то, что они могли бы хотеть некоторый специальный вид ответа на (т.е.; не Ваша полная веб-страница), таким образом, Вы могли бы сделать что-то вроде этого после того, как Вы сделаны, анализируя.

Response.Clear();
Response.ContentType = "text/plain";
Response.Write("Thanks!");
Response.End();

Обновление: это должно быть сделано в Универсальном Обработчике (.ashx) файл для предотвращения большого количества издержек из модели страницы. Проверьте эту статью для получения дополнительной информации о .ashx файлах

14
ответ дан 6 December 2019 в 09:23
поделиться

Я настоятельно рекомендовал бы сохранить каждый запрос в некоторый файл.

Таким образом, можно всегда вернуться к фактическому содержанию его позже. Можно благодарить меня позже, когда Вы находите, что враждебный порядок байтов, koi-8 закодировал, [...], независимо от того, что это было, это озадачило Ваш синтаксический анализатор...

2
ответ дан 6 December 2019 в 09:23
поделиться

Используйте IHttpHandler и избегайте модели Page наверху (в котором Вы не нуждаетесь), но используйте Запрос. Форма для получения значений, таким образом, Вы не должны анализировать пары значение-имя сами. Просто притворитесь, что Вы находитесь в PHP или Классике ASP (или ASP.NET MVC, в этом отношении).;)

3
ответ дан 6 December 2019 в 09:23
поделиться

Хорошо, если входящие данные находятся в закодированном формате POST стандартной формы, то использование Запроса. Массив формы даст Вам все данные в хорошем для обработки способа.

Если не затем я не вижу пути кроме использования Запроса. InputStream.

1
ответ дан 6 December 2019 в 09:23
поделиться

Если я читаю Ваше право вопроса, я думаю, что Вы ищете свойство InputStream на объекте Запроса. Следует иметь в виду, что это - поток пожарного шланга, таким образом, Вы не можете сбросить его.

0
ответ дан 6 December 2019 в 09:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: