在c#中以编程方式提交表单

时间:2017-12-01 07:57:28

标签: c#

我正在使用API​​向服务器发送帖子请求 (http://example.com) 在网站上表单填写了我的代码,但它实际上没有提交。我已经看过帖子,人们会给出一个HTML示例并使用点击提交方法进行某种操作,但是我不能以这种方式访问​​该表单,所以无论如何我可以提交它吗?

我正在写这样的表格......

            var ticketData = JsonConvert.SerializeObject(new
            {
                Summary = "test",
                Impact = 1,
                DueDate = "2017-12-28",
                Priority = 1
            }, Formatting.Indented);
            using (Stream dataStream = webRequest.GetRequestStream())
            {
                using (var streamWriter = new StreamWriter(dataStream))
                {
                    using (var writer = new JsonTextWriter(streamWriter))
                    {
                        writer.WriteRaw(ticketData);
                        writer.Close();
                    }
                }
            }
            HttpWebResponse httpWebResponse = (HttpWebResponse)webRequest.GetResponse();

如何以编程方式提交? 有没有办法将提交设置为true?我不知道怎么做这个

1 个答案:

答案 0 :(得分:0)

编辑:正如评论中所建议的,在下面添加了一个解释。

public async Task PostForm(Uri requestUri, string json)
{
    using (var httpClient = new HttpClient())
    {
        var content = new StringContent(json, Encoding.UTF8, "application/json");

        await httpClient.PostAsync(requestUri, content);
    }
}

此函数使用HttpClient将您序列化的表单数据发布到特定URL(requesturi)。该URL是您要发布到

的网站的POST操作的URL