- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我将HttpRequestBase
包装为HttpRequestMessage
,这要求将所有 header 都复制过来。但是,由于HttpRequestMessage
特定于哪些 header 应用于请求对象与内容对象,因此下面的httpRequest.Headers.Add
行有时会引发InvalidOperationException。
public static HttpRequestMessage AsHttpRequestMessage(this HttpRequestBase request) {
Requires.NotNull(request, "request");
var httpRequest = new HttpRequestMessage(new HttpMethod(request.HttpMethod), request.Url);
foreach (string header in request.Headers) {
httpRequest.Headers.Add(header, request.Headers.GetValues(header));
}
if (request.Form != null) {
// Avoid a request message that will try to read the request stream twice for already parsed data.
httpRequest.Content = new FormUrlEncodedContent(request.Form.AsKeyValuePairs());
} else if (request.InputStream != null) {
httpRequest.Content = new StreamContent(request.InputStream);
}
return httpRequest;
}
最佳答案
事实证明,这很简单。该片段受ASP.NET's own open sourced source code的启发很大。
/// <summary>
/// Clones an <see cref="HttpWebRequest" /> in order to send it again.
/// </summary>
/// <param name="message">The message to set headers on.</param>
/// <param name="request">The request with headers to clone.</param>
internal static void CopyHeadersFrom(this HttpRequestMessage message, HttpRequestBase request) {
Requires.NotNull(request, "request");
Requires.NotNull(message, "message");
foreach (string headerName in request.Headers) {
string[] headerValues = request.Headers.GetValues(headerName);
if (!message.Headers.TryAddWithoutValidation(headerName, headerValues)) {
message.Content.Headers.TryAddWithoutValidation(headerName, headerValues);
}
}
}
关于asp.net - 考虑到 header 名称,如何将HttpRequestBase转换为HttpRequestMessage?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15209284/
我正在尝试解决 spoj 上的问题。显然,根据注释,输入行以 \r\n 结尾。我从之前的问题中了解到的关于 \r\n 的信息是它是 Windows 的东西。我想知道的是如何考虑它。目前我在 C++ 中
有大量对象。集合是动态的:对象可以随时添加或删除。我们称对象总数为 N。 每个对象都有两个属性:上次更新的质量 (M) 和时间 (T)。 每隔 X 分钟,应从中选择一小批进行处理,这会将它们的 T 更
我有一张带有免费赠品的注册表,但有人滥用它注册为 jo+1@gmail.com jo+2@gmail.com 有没有我可以在我的电子邮件记录上运行的标准算法来验证这种情况? 我可以在其中获取 jo@
我正在管理一个已建立的网站,该网站目前正在升级(完全重新更换),但我担心我会失去所有的 Google 索引(也就是说,会有很多页面在谷歌的索引中,它将不再存在于那个地方)。 上次我升级一个(不同的)网
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎与 help center 中定义的范围内的编程无关。 . 关闭 6 个月前。 Improv
思考横向拿着 iPhone X。 由于安全区域看起来是对称的,所以安全区域的插入在左侧和右侧一样大,无论缺口在哪一侧。 假设我们希望将安全区域进一步延伸到没有凹口的那一侧的屏幕边缘。有人对此有好的方法
Haskell 通常被视为纯函数式语言的示例。鉴于 System.IO.Unsafe.unsafePerformIO 的存在,这如何合理? 编辑:我认为“纯功能”意味着不可能将不纯的代码引入到程序的功
我创建了两个 HashMap ,我想在同一个 for 循环中迭代它们。 HashMap hashmapA = new HashMap<>(); HashMap hashmapB = new HashM
在阅读了 Venkat Subramaniam 所著的《Java 函数式编程》第 106-108 页中的“昂贵资源的延迟初始化”之后,发现很难理解此代码片段的技巧 我的理解:变量heavy上课Hold
我有一个模型 A,它包含一个通用外键关系,并限制选择其他 3 个模型(将它们视为 B、C和 D) 在同一个应用程序中。我知道我们不能使用 filter 或 get 或任何其他查询集操作的通用外键的局限
我正计划制作一个 最终 使用 Cassandra 的网络应用程序.但现在我没有它,也没有服务器来运行它,我想从使用 MySQL 开始。 问题是,是否有可能以这样一种方式构建数据和查询,以便稍后将其移植
所以我刚开始,学习不同的教程并通过征服基础知识来挑战自己。我知道这对大多数人来说可能看起来很低调,但要温和一点,我对此有点陌生。 我尝试使用媒体查询 4,例如 @media (30em <= widt
我需要遍历 .csv,直到名为“seguir”的 bool 值变为 False。问题是 takewhile 丢弃了最后一次迭代和值,我需要它,因为该行中的 .csv 值与我的问题相关。 for lin
我试试这个: Stopwatch timer = new Stopwatch(); timer.Start(); for (i = 0; i < 100; i++) { //do here s
我看过这个讨论 map 的帖子:Map function in MATLAB? 因此,我想知道是否有类似的方法来考虑索引。比如如果我想做类似 (x_i)^i 的事情。 非常感谢! 最佳答案 一个例子:
异步 docs阅读: Most asyncio objects are not thread safe. You should only worry if you access objects o
背景 假设我有一个 Google map View ,另一个 View 在它上面,覆盖了它的一部分,隐藏了 map 的一些内容。 问题 我需要制作 map 的“相机”,聚焦并在坐标上有一个标记,但让它
有什么方法可以找出目录占用的原始 HDFS 空间。据我所知 hdfs dfs -du -s/dir 显示 /dir 大小,不考虑内部文件的复制。 最佳答案 运行命令 hadoop fsck/dir 并
我正在用 Java 编写程序,我需要确定某个日期是否是周末。然而,我需要考虑到在不同的国家周末是在不同的日子,例如在以色列是周五和周六,而在一些伊斯兰国家是周四和周五。更多详情可以查看this Wik
我将HttpRequestBase包装为HttpRequestMessage,这要求将所有 header 都复制过来。但是,由于HttpRequestMessage特定于哪些 header 应用于请求
我是一名优秀的程序员,十分优秀!