Получение поста из C # в PHP - PullRequest
1 голос
/ 07 июля 2011

Вот что я пытаюсь сделать. У меня настроена программа (она работает и даже отправляет на демонстрационную страницу, к которой у меня нет кода, и возвращает правильные значения, вскоре опубликует код), и с кодом, который я использую, я не могу найдите любую информацию о том, как прочитать сообщение из PHP и вернуть переменные обратно в c # (для этапа тестирования). Моя конечная цель - собрать информацию из поста и отправить ее на остальные страницы того же сайта, что и страница getpost.php. Если бы кто-то мог помочь мне с этим, я был бы очень благодарен.

class WebPostRequest
{
    WebRequest theRequest;
    HttpWebResponse theResponse;
    ArrayList theQueryData;

    public WebPostRequest(string url)
    {
        theRequest = WebRequest.Create(url);
        theRequest.Method = "POST";
        theQueryData = new ArrayList();
    }

    public void Add(string key, string value)
    {
        theQueryData.Add(String.Format("{0}={1}", key, System.Web.HttpUtility.UrlEncode(value)));
    }

    public string GetResponse()
    {
        // Set the encoding type
        theRequest.ContentType = "application/x-www-form-urlencoded";

        // Build a string containing all the parameters
        string Parameters = String.Join("&", (String[])theQueryData.ToArray(typeof(string)));
        theRequest.ContentLength = Parameters.Length;

        // We write the parameters into the request
        StreamWriter sw = new StreamWriter(theRequest.GetRequestStream());
        sw.Write(Parameters);
        sw.Close();

        // Execute the query
        theResponse = (HttpWebResponse)theRequest.GetResponse();
        StreamReader sr = new StreamReader(theResponse.GetResponseStream());
        return sr.ReadToEnd();
    }

}

Как я уже говорил, на тестовой странице все работает нормально, сообщения попадают на тестовую страницу и передаются обратно в мою программу.

** 1006 1007 *** ** ОБНОВЛЕНИЕ :::

Хорошо, я получил php на своем сайте для сбора информации POST из приложения C #. Теперь мне нужно переслать эту информацию и перенаправить пользователя на мою другую веб-страницу, чтобы он мог завершить сеанс и выяснить причину, по которой он был на моем сайте.

Ответы [ 2 ]

0 голосов
/ 09 июля 2011

Я понял это. То, что я сделал, собрало сообщение в PHP и отправило во временную базу данных и вызвало информацию со страницы, на которой клиент уже использовал IP-адрес и пароль клиента для доступа (чтобы исключить несколько компьютеров с одним IP-адресом) ) затем я создал задание cron для удаления всех данных через определенное время, в моем случае я установил его на 3 часа, так как никто не должен быть на сайте в это время в любом случае.

0 голосов
/ 09 июля 2011

PHP и почтовые данные из других источников иногда ведут себя странным образом.Чтобы найти свою проблему, вы можете сделать что-то вроде этого:

$post_from_c = json_decode(trim(file_get_contents('php://input')), true);

file_get_contents ('php: // input') это означает, что вы получаете необработанные данные, а не обработанные данные с помощью apache.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...