有没有流行的 C# 库来运行 HTTP?例如简化使用 httpwebrequest 等[关闭]

2023-12-13

有没有流行的 C# 库来运行 HTTP?例如简化使用 httpwebrequest 等

例如,使用某些参数进行http文件上传需要很多行和Http协议内容格式的知识等。WebClient本身不这样做。

那么,作为新手,c# 开发人员是否有一个众所周知的库?

Thanks


Web 表单以两种格式之一提交:应用程序/x-www-form-urlencoded and 多部分/表单数据.

网络客户端提供了一种非常简单方便的方法将任何类型的数据上传到网站。的情况下应用程序/x-www-form-urlencoded你所要做的就是提供一个名称值集合。的情况下多部分/表单数据,据我所知,您必须自己创建请求数据(可能包括文件和名称值对)。


应用程序/x-www-form-urlencoded

NameValueCollection formData = new NameValueCollection();
formData["q"] = "c# webclient post urlencoded";
formData["btnG"] = "Google Search";
formData["hl"] = "en";

WebClient myWebClient = new WebClient();
myWebClient.UploadValues(uriString, formData);

WebClient.UploadValues将 HTTP 方法设置为"POST"内容类型 to "application/x-www-form-urlencoded", URL 编码formData并上传到指定的uriString.


多部分/表单数据

string formData = @"--AaB03x
Content-Disposition: form-data; name=""submit-name""

Larry
--AaB03x
Content-Disposition: form-data; name=""files""; filename=""file1.dat""
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64

" + Convert.ToBase64String(
  File.ReadAllBytes("file1.dat"), Base64FormattingOptions.InsertLineBreaks) + @"
--AaB03x--
";

WebClient myWebClient = new WebClient();
myWebClient.Encoding = Encoding.ASCII;
myWebClient.Headers.Add("Content-Type", "multipart/form-data; boundary=AaB03x");
myWebClient.UploadString(uriString, formData);

这设置了内容类型 to "multipart/form-data"与请求数据中使用的边界。WebClient.UploadData将 HTTP 方法设置为"POST"并将字节数组上传到uriString。 本例中的请求数据包含一个文件file1.dat和一个表单参数submit-name设置为Larry。 格式描述于RFC2388.

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

有没有流行的 C# 库来运行 HTTP?例如简化使用 httpwebrequest 等[关闭] 的相关文章

  • 创建 DirectoryEntry 实例以供测试使用

    我正在尝试创建 DirectoryEntry 的实例 以便可以使用它来测试将传递 DirectoryEntry 的一些代码 然而 尽管进行了很多尝试 我还是找不到实例化 DE 并初始化它的 PropertyCollection 的方法 我有
  • 在 Xamarin Android 中将图像从 URL 异步加载到 ImageView 中

    我有一个包含多个项目的 ListView 列表中的每个项目都应该有一个与之关联的图像 我创建了一个数组适配器来保存每个列表项并具有我希望加载的图像的 url 我正在尝试使用 Web 请求异步加载图像 并设置图像并在加载后在视图中更新它 但视
  • 如何在C++中实现模板类协变?

    是否可以以这样一种方式实现类模板 如果模板参数相关 一个对象可以转换为另一个对象 这是一个展示这个想法的例子 当然它不会编译 struct Base struct Derived Base template
  • ColdFusion:上传前获取文件名

    在调用之前如何获取文件的文件名
  • 跨多个控件共享事件处理程序

    在我用 C 编写的 Windows 窗体应用程序中 我有一堆按钮 当用户的鼠标悬停在按钮上时 我希望按钮的边框发生变化 目前我有以下多个实例 每个按钮一个副本 private void btnStopServer MouseEnter ob
  • 如何在 WPF RichTextBox 中跟踪 TextPointer?

    我正在尝试了解 WPF RichTextBox 中的 TextPointer 类 我希望能够跟踪它们 以便我可以将信息与文本中的区域相关联 我目前正在使用一个非常简单的示例来尝试弄清楚发生了什么 在 PreviewKeyDown 事件中 我
  • 使用 C# 在 WinRT 中获取可用磁盘空间

    DllImport kernel32 dll SetLastError true static extern bool GetDiskFreeSpaceEx string lpDirectoryName out ulong lpFreeBy
  • C# 用数组封送结构体

    假设我有一个类似于 public struct MyStruct public float a 我想用一些自定义数组大小实例化一个这样的结构 在本例中假设为 2 然后我将其封送到字节数组中 MyStruct s new MyStruct s
  • A* 之间的差异 pA = 新 A;和 A* pA = 新 A();

    在 C 中 以下两个动态对象创建之间的确切区别是什么 A pA new A A pA new A 我做了一些测试 但似乎在这两种情况下 都调用了默认构造函数 并且仅调用了它 我正在寻找性能方面的任何差异 Thanks If A是 POD 类
  • 初始化变量的不同方式

    在 C 中初始化变量有多种方法 int z 3 与 int 相同z 3 Is int z z 3 same as int z z 3 您可以使用 int z z 3 Or just int z 3 Or int z 3 Or int z i
  • 更改窗口的内容 (WPF)

    我创建了一个简单的 WPF 应用程序 它有两个 Windows 用户在第一个窗口中填写一些信息 然后单击 确定 这会将他们带到第二个窗口 这工作正常 但我试图将两个窗口合并到一个窗口中 这样只是内容发生了变化 我设法找到了这个更改窗口内容时
  • C 中的位移位

    如果与有符号整数对应的位模式右移 则 1 vacant bit will be filled by the sign bit 2 vacant bit will be filled by 0 3 The outcome is impleme
  • 可空属性与可空局部变量

    我对以下行为感到困惑Nullable types class TestClass public int value 0 TestClass test new TestClass Now Nullable GetUnderlyingType
  • AccessViolationException 未处理

    我正在尝试使用史蒂夫 桑德森的博客文章 http blog stevensanderson com 2010 01 28 editing a variable length list aspnet mvc 2 style 为了在我的 ASP
  • 什么是 C 语言的高效工作流程? - Makefile + bash脚本

    我正在开发我的第一个项目 该项目将跨越多个 C 文件 对于我的前几个练习程序 我只是在中编写了我的代码main c并使用编译gcc main c o main 当我学习时 这对我有用 现在 我正在独自开展一个更大的项目 我想继续自己进行编译
  • 将应用程序从 Microsoft Access 迁移到 VB 或 C#.NET

    我目前正试图说服管理层需要将我们的应用程序之一移植到 NET 该应用程序已经发展成为 Access 中的一个庞然大物 SQL 后端 拥有 700 个链接表 650 个表单 子表单 130 个模块和 850 个查询 我几乎知道这样做的所有主要
  • ListDictionary 类是否有通用替代方案?

    我正在查看一些示例代码 其中他们使用了ListDictionary对象来存储少量数据 大约 5 10 个对象左右 但这个数字可能会随着时间的推移而改变 我使用此类的唯一问题是 与我所做的其他所有事情不同 它不是通用的 这意味着 如果我在这里
  • 在Linux中使用C/C++获取机器序列号和CPU ID

    在Linux系统中如何获取机器序列号和CPU ID 示例代码受到高度赞赏 Here http lxr linux no linux v2 6 39 arch x86 include asm processor h L173Linux 内核似
  • 如何连接字符串和常量字符?

    我需要将 hello world 放入c中 我怎样才能做到这一点 string a hello const char b world const char C string a hello const char b world a b co
  • 为什么 strtok 会导致分段错误?

    为什么下面的代码给出了Seg 最后一行有问题吗 char m ReadName printf nRead String s n m Writes OK char token token strtok m 如前所述 读取字符串打印没有问题 但

随机推荐

  • 将“facet_grid”从多面画布上拉开?

    考虑以下示例 ggplot2 facet grid p lt ggplot mpg aes displ cty geom point p facet grid vars drv vars cyl Which results in the f
  • Safari 应用扩展未安装

    仅供参考 我对 XCode 开发完全陌生 我有一个 Safari 应用程序扩展项目 如果我从 XCode 中运行它 它会将我的扩展添加到 Safari 中 如果我创建存档 导出并选择 导出开发签名应用程序 我可以获取生成的文件 将其安装在另
  • 使用 FileMapping 传递 _EXCEPTION_POINTERS * 时遇到问题

    我想做一个进程外异常处理程序 并且创建了一个看门狗进程 当子进程引发异常时 它会进行专门的异常处理 我已经通过事件成功调用了看门狗进程 我面临的问题是在尝试将异常信息指针传递给其他进程时 我降落在这里将指针传递给由 exec 生成的进程并了
  • 在 Objective-C 中转发声明协议

    我的类 h 看起来像 protocol AppInfoDelegate class InfoTextView interface AppInfoViewController UIViewController
  • 是否可以通过JavaScript检测插件是否激活?

    这样我通常会检测插件 例如Flash播放器 for var el in navigator plugins if navigator plugins el name navigator plugins el name toLowerCase
  • 批量创建文件夹列表:无法回显重音字符

    我使用此批处理指令生成不包含 zip 文件的每个子目录的列表 echo off for d r f in do if not exist f zip echo f gt gt G backup folders txt 问题是这会生成一个列表
  • 防止浏览器在提交表单时跳转到首页

    我试图防止用户提交表单时页面跳转到顶部 有很多人建议return false 但是 它也阻止了表单的提交 我想知道是否有人可以帮助我 JQuery submit click function doesn t work return fals
  • 收据打印机 - 从网页打印

    我有一台收据打印机 它连接到我的计算机上的串行 COM1 我正在尝试从网页打印收据 当打印时 它只是一个空白 没有任何文本 空白收据 它在 IE8 上工作正常 但在 Firefox 3 6 上不起作用 我有一台 Epson TM T88II
  • Stream.Seek(0, SeekOrigin.Begin) 或 Position = 0

    当您需要将流重置为开始时 例如MemoryStream 是使用的最佳实践 stream Seek 0 SeekOrigin Begin or stream Position 0 我发现两者都工作得很好 但想知道其中一个是否比另一个更正确 U
  • 将带有内部链接的 Excel 转换为 pdf

    我正在尝试将带有内部链接 即指向同一 Excel 中不同位置的链接 的 Excel 转换为 pdf 我已经浏览了网上关于这方面的几篇文章 但似乎找不到任何适当的解决方案来进行这种转换 提供的解决方案主要适用于外部超链接 而不适用于内部超链接
  • 如何发出帖子请求来创建新用户

    我正在使用react chat engine 创建一个聊天应用程序 一切都运转良好 除了我不知道如何发出帖子请求来创建新用户这一事实 这是我的代码 const handelSubmit async e gt e preventDefault
  • eclipse无需jdk运行程序

    为什么我们不需要安装jdk就可以在eclipse中编译执行java程序呢 jre安装就足够了 但是在从cmd运行代码时我们需要安装jdk eclipse 是否附带任何替代 javac 我尝试在 eclipse 文件夹中搜索 javac 但没
  • 如何使用带参数的嵌套命令创建 Git 别名?

    在我的点文件中 我有以下有效的函数 function undelete git checkout git rev list n 1 HEAD 1 1 我这样使用 undelete path to deleted file txt 我想确定这
  • 查找列表中的第一个元素和索引匹配条件

    考虑这个简单的例子 mylist 1 2 3 4 5 6 for idx el in enumerate mylist if el gt 0 myidx myel idx el break myidx myel Out 20 2 3 我感兴
  • SQL Server 获取前三条记录的值并按每人一行显示

    我试图将一个人的前三行的值全部显示在一行中 我的数据如下所示 id co number client no Client name taken date taken value 270103 12 1111 John Doe 6 7 11
  • 使用 Android Espresso 从仅包含图标的 TabLayout 中单击 Tab 后检查片段可见性

    我正在尝试从已使用视图寻呼机设置的 tabLayout 中单击选项卡后检查我的片段是否可见 这是我的实际活动代码 位于我的活动 onCreate 方法中 mViewPager findViewById R id contentFrameLa
  • 检测添加到 DOM 的图像何时已加载

    比如说 用户打开一个页面 单击一个按钮 然后出现带有图像的弹出窗口 如何检测所有图像何时已加载 我不能使用window onload在这里 因为页面已经加载了所有资源 为了说清楚 我想找出弹出窗口的最终范围 弹出窗口添加到 DOM 中 如下
  • 将 AST 编译回源代码

    我目前正在构建一个用 PHP 编写的 PHP 解析器 因为没有现有的解析器出现我之前的问题 The 解析器本身效果相当好 现在显然解析器本身没有什么好处 除了静态分析 我想对 AST 应用转换 然后将其编译回源代码 应用转换并不是什么大问题
  • jquery getJSON 不适用于 url

    我找到了用于实时显示分数的 json url http json cricket appspot com score json json的输出 batting team Canada date Feb 28 2011 match Canad
  • 有没有流行的 C# 库来运行 HTTP?例如简化使用 httpwebrequest 等[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 有没有流行的 C 库来运行