构建多部分响应

2024-03-15

考虑到多个 HTTP 请求的响应,我必须从中构建一个多部分响应。我面临的问题是如何在最终的多部分响应中设置单个响应的响应标头。为了。例如。

HttpClient client = new HttpClient();
HttpRequestMessage request1 = new HttpRequestMessage(HttpMethod.Get, "http://www.xyx/Service.svc/resource1");
HttpResponseMessage response1 = client.SendAsync(request).Result;

HttpRequestMessage request2 = new HttpRequestMessage(HttpMethod.Get, "http://www.xyx/Service.svc/resource2");
HttpResponseMessage response2 = client.SendAsync(request).Result;

MultipartContent content = new MultipartContent("mixed", "----Boundary");
content.Add(response1.Content);
content.Add(response2.Content);

我从中得到的回应是这样的:

------Boundary
Content-Length: 99427
Content-Type: application/json; charset=utf-8
Last-Modified: Mon, 20 Jan 2014 06:15:50 GMT

{"DebugInfo":null}
------Boundary
Content-Length: 99427
Content-Type: application/json; charset=utf-8
Last-Modified: Mon, 20 Jan 2014 06:15:50 GMT

{"DebugInfo":null}
------Boundary--

现在我想将每个请求的响应标头作为单独响应的一部分以及最终响应中包含,它应该看起来像

HTTP/1.1 200 OK
Content-Type: multipart/mixed; boundary=batch_pK7JBAk73-E=_AA5eFwv4m2Q=
Date: Tue, 22 Jan 2013 18:56:00 GMT
Expires: Tue, 22 Jan 2013 18:56:00 GMT
Cache-Control: private, max-age=0
Content-Length: 1972

--batch_pK7JBAk73-E=_AA5eFwv4m2Q=
Content-Type: application/http
Content-ID: <response-8a09ca85-8d1d-4f45-9eb0-da8e8b07ec83+1>

HTTP/1.1 200 OK
ETag: "lGaP-E0memYDumK16YuUDM_6Gf0/V43j6azD55CPRGb9b6uytDYl61Y"
Content-Type: application/json; charset=UTF-8
Date: Tue, 22 Jan 2013 18:56:00 GMT
Expires: Tue, 22 Jan 2013 18:56:00 GMT
Cache-Control: private, max-age=0
Content-Length: 247

{
 "kind": "storage#objectAccessControl",
 "id": "example-bucket/obj1/allUsers",
 "selfLink": "https://www.googleapis.com/storage/v1beta2/b/example-bucket/o/obj1/acl/allUsers",
 "bucket": "example-bucket",
 "object": "obj1",
 "entity": "allUsers",
 "role": "READER"
}

--batch_pK7JBAk73-E=_AA5eFwv4m2Q=
Content-Type: application/http
Content-ID: 

HTTP/1.1 200 OK
ETag: "lGaP-E0memYDumK16YuUDM_6Gf0/91POdd-sxSAkJnS8Dm7wMxBSDKk"
Content-Type: application/json; charset=UTF-8
Date: Tue, 22 Jan 2013 18:56:00 GMT
Expires: Tue, 22 Jan 2013 18:56:00 GMT
Cache-Control: private, max-age=0
Content-Length: 247

{
 "kind": "storage#objectAccessControl",
 "id": "example-bucket/obj2/allUsers",
 "selfLink": "https://www.googleapis.com/storage/v1beta2/b/example-bucket/o/obj2/acl/allUsers",
 "bucket": "example-bucket",
 "object": "obj2",
 "entity": "allUsers",
 "role": "READER"
}

--batch_pK7JBAk73-E=_AA5eFwv4m2Q=
Content-Type: application/http
Content-ID: 

HTTP/1.1 200 OK
ETag: "lGaP-E0memYDumK16YuUDM_6Gf0/d2Z1F1_ZVbB1dC0YKM9rX5VAgIQ"
Content-Type: application/json; charset=UTF-8
Date: Tue, 22 Jan 2013 18:56:00 GMT
Expires: Tue, 22 Jan 2013 18:56:00 GMT
Cache-Control: private, max-age=0
Content-Length: 247

{
 "kind": "storage#objectAccessControl",
 "id": "example-bucket/obj3/allUsers",
 "selfLink": "https://www.googleapis.com/storage/v1beta2/b/example-bucket/o/obj3/acl/allUsers",
 "bucket": "example-bucket",
 "object": "obj3",
 "entity": "allUsers",
 "role": "READER"
}

--batch_pK7JBAk73-E=_AA5eFwv4m2Q=--

有谁知道如何将它们添加到MultipartContent in C#?


知道了。您还可以添加完整的回复MultipartContent以及。

MultipartContent content = new MultipartContent("mixed", "----Boundary");
content.Add(new HttpMessageContext(response1));
content.Add(new HttpMessageContext(response2));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

构建多部分响应 的相关文章

  • MSI 和 EXE 安装程序有什么区别,我应该选择哪一个? [复制]

    这个问题在这里已经有答案了 可能的重复 msi 和 setup exe 文件之间有什么具体区别 https stackoverflow com questions 1789530 what are the specific differen
  • 如何从该 Voronoi 图数据中获取单元格字典?

    使用找到的voronoi delaunay图生成库在这个节目中 http sourceforge net projects mapmanager 这是基于 财富 最初的实施他的算法 http en wikipedia org wiki Fo
  • 删除字符串 C 的第一个字符

    我试图删除字符串的第一个字符并保留其余部分 我当前的代码无法编译 我对如何修复它感到困惑 My code char newStr char charBuffer int len strlen charBuffer int i 1 char
  • 将指针转换为浮点数?

    我有一个unsigned char 通常 这指向一块数据 但在某些情况下 指针就是数据 即 铸造一个int的价值unsigned char 指针 unsigned char intData unsigned char myInteger 反
  • C++ 非类型参数包扩展

    我正在编写由单一类型参数化的模板函数 并且具有可变数量的相同类型 而不是不同类型 的参数 它应该检查第一个值是否在其余值中 我想这样写 include
  • 使用 Selenium for C# 登录 Facebook

    我一直在使用 Selenium C 框架并尝试进行 facebook 登录 但没有任何运气 这是我到目前为止得到的 基于这篇文章 使用 Selenium 测试 Facebook Connect 应用程序 https stackoverflo
  • C++ 私有静态成员变量

    此 C 代码在编译时产生链接器错误 A h class A public static void f private static std vector
  • C 中“for”循环中的两个变量

    我正在编写一些代码 需要在其中使用两个变量for环形 下面的代码看起来没问题吗 它确实给了我预期的结果 for loop 1 offset loop 2 offset 2 loop 1 gt offset 190 loop 2 lt 190
  • 枚举器上的 [[maybe_unused]]

    查看规格 maybe unused http en cppreference com w cpp language attributes 它指出 出现在类 typedef 变量 非静态数据成员 函数 枚举或枚举器的声明中 如果编译器对未使用
  • 套接字:监听积压并接受

    listen sock backlog 在我看来 参数backlog限制连接数量 这是我的测试代码 server initialize the sockaddr of server server sin family AF INET ser
  • 为什么C++变量是指针时不需要正确定义?

    我对 C 语言完全陌生 特别是指针 经验主要是 PHP 并且希望对以下内容进行一些解释 我已经尝试寻找答案 这两行代码如何能够在我的程序中完成完全相同的工作 第二行似乎违背了我迄今为止所学到和理解的关于指针的一切 char disk 3 D
  • .Net Core 中的脚手架以及解决方案中的多个项目

    我创建了一个针对 net461 的 Net Core MVC6 应用程序 我使用了一个我非常熟悉的项目结构 其中我将数据 模型和服务类放置在单独的类库项目中 并且 Web 项目引用这些项目 当我尝试搭建控制器时 我收到一条错误 指出我正在搭
  • std::string 在 Visual Studio 上的具体行为?

    我有一个项目需要读取 写入大文件 我决定使用 ifstream read 将这些文件一次性放入内存中 放入 std string 中 这似乎是在 C 中执行此操作的最快方法 http insanecoding blogspot com 20
  • 使用互斥锁来阻止临界区外部的执行

    我不确定我的术语是否正确 但这里是 我有一个由多个线程使用的函数来写入数据 在注释中使用伪代码来说明我想要的内容 these are initiated in the constructor int data std atomic
  • C 的“char”使用什么字符集? [复制]

    这个问题在这里已经有答案了 简单的问题 我最近开始用 C 编程 有一个简单的问题 C 编程语言在其 char 类型中使用什么字符集 例如 ASCII 还是取决于软件 操作系统 char 本质上是 1 个字节 主要在所有操作系统上 所以默认情
  • Qt:将拖放委托给子级的最佳方式

    我在 QWidget 上使用拖放 我重新实现了 DragEnterEvent dragLeaveEvent dragMoveEvent 和 dropEvent 效果很好 在我的 QWidget 中 我有其他 QWidget 子级 我希望它们
  • 如何分析 VSCode 中函数的性能

    我用 C Golang 编写了一个程序 如何找到占用最高 CPU 周期的函数 目的是提高正在执行的程序的性能 2021 年 10 月 金香儿哈娜 https github com hyangah宣布 tweet https twitter
  • double 类型的静态类成员的常量表达式初始值设定项

    在 C 11 和 C 14 中 为什么我需要constexpr在下面的代码片段中 class Foo static constexpr double X 0 75 而这会产生编译器错误 class Foo static const doub
  • 编译器可以报告未知属性的错误吗?即使有范围?

    在N3291 7 6 1 3 5 属性语法和语义 decl attr grammar 关于如何属性是用我读过的源代码写的 使用一个属性范围令牌是有条件支持的 实现定义的行为 and For an 属性标记本国际标准中未指定 该行为是实现定义
  • FakeItEasy 代理方法调用实际实现

    我正在尝试将对假对象的调用代理到实际的实现 这样做的原因是我希望能够使用 Machine Specifications 的 WasToldTo 和 WhenToldTo 它们仅适用于接口类型的伪造 因此 我正在执行以下操作来代理对我的真实对

随机推荐

  • 是否可以获取对象的不可枚举继承属性名称?

    在 JavaScript 中 我们有几种获取对象属性的方法 具体取决于我们想要获取的内容 1 Object keys 它返回对象的所有自己的可枚举属性 即 ECMA5 方法 2 a for in循环 返回对象的所有可枚举属性 无论它们是自己
  • 你如何理解一大块代码?

    我是一名刚刚开始工作的应届大学毕业生 在我的起步阶段 我需要学习很多产品代码 有一些设计文档 但没有多大帮助 您能否提供一些通用技术来浏览和理解庞大的产品代码 特别是 C 运行它doxygen http www doxygen nl 这将生
  • StreamBuilder 子更新在导航后不呈现

    我正在使用扑动StreamBuilder决定向用户显示哪个 根 页面 现在基本上有2种可能性 LoginPage or HomePage 我的应用程序的主要构建方法如下所示 Widget build BuildContext context
  • 在没有 root 权限的 Linux 上安装 gcc

    我可以使用公共图书馆中的计算机 并且我想尝试一些 C 以及其他代码 问题是没有安装 g 并且我无法使用包安装它 因为我没有 root 访问权限 是否有一种 智能 方法可以在主文件夹中创建完整的编程环境 我安装了gcc 我可以编译C代码 另外
  • 错误:yarn start - 错误命令“start”未找到

    我正在尝试学习 React 并且我正在使用一个私人存储库来开始它 I run yarn start在存储库的目录中 但我收到错误消息 yarn run v1 13 0 error Command start not found info V
  • 简单对话框中的 Stackoverflow 异常

    您好 我在这两个对话框中收到 Stackoverflow 异常 Dialog A正在从主对话框类中调用 对话框A有一个选择去Dialog A child and Dialog A child有选择回去Dialog A 但它遇到了 Stack
  • 如何使用Javascript触发CSS“悬停状态”? [复制]

    这个问题在这里已经有答案了 当用户将鼠标悬停在元素上时 CSS 悬停状态 将触发 我们如何使用 Javascript 将元素设置为 悬停状态 是否可以 如果您可以接受使用 focus您可以使用以下命令来代替悬停 var links docu
  • 如何根据条件应用Spring消息转换器?

    我有一个控制器 其响应是驼峰式 json 值 现在我们正在用新版本重写代码 所需的响应位于snake case中 我添加了一个消息转换器并修改了对象映射器来设置setPropertyNamingStrategy PropertyNaming
  • 有没有集成CouchDb和Solr的项目?

    我希望能够使用 Solr 搜索 CouchDB 数据库 有没有提供这样的集成的项目 我还知道 CouchDB Lucene 有没有办法让 Solr 融入其中 Thanks 考虑到它是多么容易 自己推出会更有意义 首先 您需要决定使用哪种 S
  • $.mobile.silentScroll 在 worklight 应用程序中不起作用

    我正在使用 IBM 的 worklight 框架开发一个应用程序 其中我使用 jquery 移动库进行编码 不幸的是 当我使用 mobile silentScroll滚动 它没有效果 它不起作用 有人遇到过这个问题吗 在其他工作中 如何在w
  • PowerShell安装NuGet,显示无法访问互联网,但实际上可以

    我按照中提到的步骤进行操作在代理后面使用 PowerShell http woshub com using powershell behind a proxy 配置我的代理服务器 netsh winhttp set proxy IP Por
  • Pygame 或 Python 中的透明窗口

    我正在尝试为我的游戏制作一个透明窗口作为启动屏幕 图像具有透明度 但我无法使窗口透明 例如在其后面看到屏幕 桌面等 我发现的所有内容都不能使用 pygame 我可以从中提取任何外部库来实现这一点吗 顺便提一句 这完全是一个Linux项目 所
  • Django FileField 在上传后移动文件

    围绕这一主题有几个问题 但我发现没有一个适合我想做的事情 我希望能够将文件上传到模型 并使用 pk 等模型实例属性将该文件保存在一个合适的位置 我知道这些东西会在之后设置model save 所以我需要编写一个自定义保存来执行此操作 但我无
  • 如何配置 docker 文件以像 perl 一样运行 cgi 脚本

    我有这个文件 索引 php Dockerfile conf myawesomesite conf cgi bin helloworld pl 在 conf myawesomesite conf 中
  • PHP 页面加载/刷新到准确位置

    我想做的是通过 href 链接将用户传递到 php 脚本 然后将他们传回与单击链接之前完全相同的位置 就像页面尚未刷新一样 有谁知道这是否或如何可能 谢谢 使用 HTML 您可以得到以下内容 p a href script php Send
  • 如何在 MongoDB 中处理小于 1970 的日期

    我有一个包含 生日 字段的文档 该字段的值也可能低于 01 01 1970 我该如何处理这个问题 例如 birthday gt newMongoDate strtotime 31 10 1968 这将创建一个 生日 值 1 1 1970 1
  • Tomcat 上的 SSL 证书 - 别名无法识别密钥

    想知道是否有人可以告诉我我在哪里搞砸了 我有一个 keytool 创建的密钥库 一个来自 Thawte 的主证书 辅助证书和 ssl 证书 我最初使用 openssl 创建了 CSR 然后使用记录的过程将私钥转换为 PKCS12 以导入到密
  • 将一行复制一定次数,然后每次将 30 分钟添加到时间戳(就像序列一样)

    样本数据 ID Location Type Trip End Number of periods 1298 Residential 02 01 2022 05 30 48 1298 Residential 03 01 2022 05 30
  • 可以在 PHP 中测试变量是否是静态的吗?

    PHP 中是否可以测试变量是否是静态的 我正在尝试创建一个神奇的方法 get它还查看静态变量 我发现property exists 当变量也是静态时返回 true 但我需要使用 代替 gt 我会期待吗 可以通过反射测试变量是否是静态的 cl
  • 构建多部分响应

    考虑到多个 HTTP 请求的响应 我必须从中构建一个多部分响应 我面临的问题是如何在最终的多部分响应中设置单个响应的响应标头 为了 例如 HttpClient client new HttpClient HttpRequestMessage