首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用C#将HttpPost数据转换为网页?

如何使用C#将HttpPost数据转换为网页?
EN

Stack Overflow用户
提问于 2018-05-29 09:45:09
回答 2查看 0关注 0票数 0

我想使用C#代码登录到网站。

以下是示例表单的html代码:

代码语言:javascript
复制
<form action="http://www.site.com/login.php" method="post" name="login" id="login">
<table border="0" cellpadding="2" cellspacing="0">
<tbody>
<tr><td><b>User:</b></td><td colspan=\"2\"><b>Password:</b></td></tr>
<tr>
<td><input class="inputbg" name="user" type="text"></td>
<td><input class="inputbg" name="password" type="password"></td>
<td><input type="submit" name="user_control" value="Submit" class="buttonbg"></td>
</tr>
</tbody></table>
</form>

这是我迄今为止尝试过的失败结果:

代码语言:javascript
复制
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.site.com/login.php");
request.Method = "POST";
using (StreamWriter writer = new StreamWriter(request.GetRequestStream(), Encoding.ASCII))
{
    writer.Write("user=user&password=pass&user_control=Eingabe");
}

HttpWebResponse response = (HttpWebResponse)request.GetResponse();

using (StreamReader reader = new StreamReader(response.GetResponseStream()))
{
    stream = new StreamWriter("login.html");
    stream.Write(reader.ReadToEnd());
    stream.Close();
}
EN

回答 2

Stack Overflow用户

发布于 2018-05-29 18:32:55

cookiecontainer

使用基于表单的身份验证的网站通常依赖于Cookie。如果不设置请求的cookiecontainer,它将不支持cookie。

票数 0
EN

Stack Overflow用户

发布于 2018-05-29 19:35:18

我会建议使用Fiddler2来查看POST应用程序和POST应用程序之间的精确区别。

另外,我更喜欢使用WebClient类,因为它是很好的抽象类型,并且易于使用。

代码示例:

https://github.com/alexanderbeletsky/trackyt.api.csharp/blob/master/Trackyt.Api/Adapter/Adapter.cs

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100000133

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档