我正在使用webclient给我网站上的一个页面打电话.我试图将网页的结果转换成pdf格式,因此我试图获得呈现页面的字符串表示形式.问题是请求没有经过身份验证,所以我得到的只是一个登录屏幕.我已将UseDefaultCredentials属性发送到true,但仍然得到相同的结果.下面是我代码的一部分:

 WebClient webClient = new WebClient();
 webClient.Encoding = Encoding.UTF8;

 webClient.UseDefaultCredentials = true;
 return Encoding.UTF8.GetString(webClient.UploadValues(link, "POST",form));

推荐答案

您使用的是哪种身份验证?如果是表单身份验证,那么最多只能找到.ASPXAUTH cookie并在WebClient请求中传递它.

在最坏的情况下,这是行不通的.

Asp.net相关问答推荐

在控制器中通过依赖项注入使用ASP.NET变量值时,不会持久化

try 在 .net 中使用 MS Graph 添加新的应用程序角色时出现 ODataError

使用 Asp.Net MVC 和 KnockoutJS 处理日期

ASP.NET Core 1.0 ConfigurationBuilder().AddJsonFile("appsettings.json");找不到文件

WebAPI 请求流支持

ASP.NET-MVC 中的表单发布上的 FormCollection 为空

使用 jQuery 验证插件匹配两个字段

ASP.NET MVC4 jquery/javascript 包的使用

由于缺少定义,在 .net Core 应用程序上构建失败

使用 jQuery.ajax() 时如何处理错误?

如何将 css 类添加到 ASP.Net 中的更新面板?

MVC 3视图中的当前上下文中不存在名称'HTML'

.Net Standard 2.0 类库是否有通用配置文件?

在 ASP.NET 4.5 WebForms 中通过 bundle.config 与 BundleConfig.cs Bundle 资源

解析器错误消息:无法加载类型网络营销

将当前谷歌 map 保存为图片

将对象传递给 HTML 属性

ASP.net 判断页面是 http 还是 https

解耦 ASP.NET MVC 5 标识以允许实现分层应用程序

以编程方式滚动到锚标记