В настоящее время я пытаюсь портировать приложение с asp.net на php, однако я просто ударился о стену и мне нужна рука с этим.
Мне нужно сбросить все данные, которые ASPX получает через POST, в файл, но я понятия не имею, как это сделать
есть идеи?
Вы можете использовать свойство InputStream объекта Request. Это даст вам необработанные данные http-запроса. Обычно вы можете захотеть сделать это как пользовательский обработчик http, но я верю, что вы можете сделать это в любое время.
if (Request.RequestType == "POST") { using (StreamReader reader = new StreamReader(Request.InputStream)) { // read the stream here using reader.ReadLine() and do your stuff. } }
Если вы просто хотите получить данные POST, вы можете использовать Request.Form.ToString () для получения всех данных в кодированном виде.
if (Request.RequestType == "POST") { string myData = Request.Form.ToString(); writeData(myData); //use the string to dump it into a file, }
Вы можете использовать BinaryRead для чтения из тела запроса:
BinaryRead
Request.BinaryRead
Или вы можете получить ссылку на входной Stream объект с:
Stream
Request.InputStream
Тогда вы можете использовать CopyStream:
CopyStream
using (FileStream fs = new FileStream(...)) CopyStream(fs, Request.InputStream);
Вы можете использовать прокси-приложение, такое как Fiddler . Это позволит вам просмотреть все данные, которые были переданы, а также сохранить их в файл при необходимости.
Лучший способ сделать это через какой-нибудь плагин для браузера, например Fiddler или LiveHttpHeaders (только Firefox). Затем вы можете перехватить необработанные данные POST.