1

我会先添加一个简短的版本:我怎么知道我指的是哪种形式,以及如何使用它来触发它HttpWebRequest.Method = "POST"

完整版本
想不出任何好的标题措辞
无论如何,这是我的背景:

 HttpWebRequest request = (HttpWebRequest)WebRequest.Create("URL");
    request.Method = "POST";
    request.ContentType = "application/x-www-form-urlencoded";
    string form = "subject=Test&message=Hello world!";
    byte[] BA = Encoding.UTF8.GetBytes(form);
    request.ContentType = "application/x-www-form-urlencoded";
    request.ContentLength = BA.Length;
    Stream s_data = request.GetRequestStream();
    s_data.Write(BA, 0, BA.Length);
    s_data.Close();
    WebResponse res = request.GetResponse();
    s_data = res.GetResponseStream();
    StreamReader read = new StreamReader(s_data);
    string sr = read.ReadToEnd();
    read.Close();s_data.Close();res.Close();
    Console.WriteLine(sr);

    Console.ReadKey();

我从教程等中获得了很多部分,即使我已经稍微了解了它的工作原理,但有些事情我无法找到答案......
我的主要问题是,我怎样才能得到正确的帖子值受到影响,我如何才能真正触发表单?我完全不确定这是否正确:string form = "subject=Test&message=Hello world!";,但我试图做的是将“Test”分配给$_POST["subject],并将“Hello”分配给$_POST["message"]. 我可能会偏离轨道,所以在这种情况下,请告诉我。

编辑: “URL”真的是别的东西,现在当我想到它时,我什至还没有声明表单名称......

4

1 回答 1

0

HttpUtility.UrlEncode如果您对这些值的使用和urldecode(在 php 中)有一些疑问

string form = "subject="+HttpUtility.UrlEncode(subject_value)+"&message="+HttpUtility.UrlEncode(message_value);

而在 php

$var = isset($_POST["subject"]) ? $_POST["subject"] : null;

记住System.Web在您的项目中添加参考

于 2013-10-25T20:31:10.623 回答