C# 与httpc客户端的Mantain会话#
出于安全原因,我的应用程序通过流显示网页 我有以下代码:C# 与httpc客户端的Mantain会话#,c#,asp.net-mvc,session,dotnet-httpclient,controllers,C#,Asp.net Mvc,Session,Dotnet Httpclient,Controllers,出于安全原因,我的应用程序通过流显示网页 我有以下代码: var client = new HttpClient(); var response = await client.GetAsync("http://www.webpage.com"); Stream products = await response.Content.ReadAsStreamAsync(); return File(products, "text/html"); 这通过流显示网页,一切都很好,因此,我通过POST发送
var client = new HttpClient();
var response = await client.GetAsync("http://www.webpage.com");
Stream products = await response.Content.ReadAsStreamAsync();
return File(products, "text/html");
这通过流显示网页,一切都很好,因此,我通过POST发送数据,例如,简单登录:
[HttpPost]
public async Task<ActionResult> Index([Bind(Include = "ID,username,password")] DataUser dataUser)
{
var myHttpClient = new HttpClient();
var formContent = new FormUrlEncodedContent(new[]
{
new KeyValuePair<string, string>("username", dataUser.username),
new KeyValuePair<string, string>("password", dataUser.password)
});
var response = await myHttpClient.PostAsync("http://www.webpage.com", formContent);
Stream stringContent = await response.Content.ReadAsStreamAsync();
return File(stringContent, "text/html");
}
[HttpPost]
公共异步任务索引([Bind(Include=“ID,username,password”)]DataUser-DataUser)
{
var myHttpClient=新的HttpClient();
var formContent=new FormUrlEncodedContent(new[]
{
新的KeyValuePair(“用户名”,dataUser.username),
新的KeyValuePair(“密码”,dataUser.password)
});
var response=等待myHttpClient.PostAsync(“http://www.webpage.com“,formContent);
Stream stringContent=wait response.Content.ReadAsStreamAsync();
返回文件(stringContent,“text/html”);
}
一切都很好,我可以登录,但问题是,当我想访问另一个页面时,它会向我显示一条消息,表示我没有活动会话
那么,如何使用HttpClient维护活动会话?有什么办法吗
谢谢 一,。跟踪cookies。2.您能否引用将文件保存到磁盘并显示它们的“安全”原因?相信我,我非常怀疑你会以这种方式增加任何安全性。谢谢@zaitsman,这更像是我的客户想要的,我知道,这不是一个好主意,但他想要它,就像“如果我的服务器被黑客攻击,他们可以下载代码!只能看到这个控制器,但不能看到核心代码”