热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何使用restsharp下载文件

如何解决《如何使用restsharp下载文件》经验,为你挑选了3个好方法。

我有一个URL(来自客户端的实时源的URL),当我在浏览器中点击时返回xml响应.我已将其保存在文本文件中,其大小为8 MB.

现在我的问题是我需要将此响应保存在服务器驱动器上的xml文件中.从那里我将在数据库中插入此.并且需要使用http-client或c#.net 4.5的rest-sharp库使用代码进行请求

我不确定我应该为上述情况做些什么.任何身体都能给我一些建议



1> Todd Menier..:

使用RestSharp,它就在自述文件中:

var client = new RestClient("http://example.com");
client.DownloadData(request).SaveAs(path);

随着HttpClient,它涉及更多.看看这篇博客文章.

另一种选择是Flurl.Http(免责声明:我是作者).它使用HttpClient引擎盖,提供流畅的界面和许多方便的帮助方法,包括:

await "http://example.com".DownloadFileAsync(folderPath, "foo.xml");

在NuGet上获取它.


@JCarlos:`SaveAs`方法仍在那里.它位于`RestSharp.Extensions`命名空间,`MiscExtensions`类中.

2> 小智..:

似乎SaveAs已经停产.你可以试试这个

var client = new RestClient("http://example.com")    
byte[] respOnse= client.DownloadData(request);
File.WriteAllBytes(SAVE_PATH, response);


见上面的答案评论.

3> Vitaly..:

如果您想要异步版本

var request = new RestRequest("/resource/5", Method.GET);
var client = new RestClient("http://example.com")    
var respOnse= await client.ExecuteTaskAsync(request);
if (response.StatusCode != HttpStatusCode.OK)
            throw new Exception($"Unable to download file");
response.RawBytes.SaveAs(path);


推荐阅读
  • PHP网站部署指南:从零开始搭建PHP网站
    本文提供了详细的步骤指导,帮助开发者在不同环境下成功部署PHP网站,包括在IIS和Apache服务器上的具体操作。 ... [详细]
  • 本文介绍了FTP(文件传输协议)的基础知识,包括其定义、如何通过TCP建立控制和数据连接,以及主动模式与被动模式的区别。FTP作为一种重要的文件传输协议,在互联网数据交换中扮演着关键角色。 ... [详细]
  • 使用EF Core在.Net Core控制台应用中操作SQLite数据库
    本文介绍如何利用Visual Studio 2019和Windows 10环境,通过Entity Framework Core(EF Core)实现对SQLite数据库的读写操作。项目源代码可从百度网盘下载。 ... [详细]
  • 本文旨在为初学者提供一个详细的指南,从零开始学习如何使用 ASP.NET MVC5 和 Entity Framework 6 (EF6) 搭建项目。通过逐步指导,帮助读者理解 MVC 架构的核心概念,并掌握基本的操作方法。 ... [详细]
  • Oracle中打开10046Trace的各种方法10046trace的跟踪等级10046是一个Oracle的内部事件(event),通过设置这个事件可以得到Oracl ... [详细]
  • 远程访问用户 Kindle通过电子书实现控制
    介绍自2007年以来,亚马逊已售出数千万台Kindle,令人印象深刻。但这也意味着数以千万计的人可能会因为这些Kindle中的软件漏洞而被黑客入侵。他 ... [详细]
  • 本文探讨了在使用 ClickOnce 部署方式时遇到的自动更新失败问题,包括本地安装与服务器安装的不同表现,并提供了详细的解决方案。 ... [详细]
  • 这个报错出现在userDao里面,sessionfactory没有注入。解决办法:spring整合Hibernate使用test测试时要把spring.xml和spring-hib ... [详细]
  • 利用Selenium框架解决SSO单点登录接口无法返回Token的问题
    针对接口自动化测试中遇到的SSO单点登录系统不支持通过API接口返回Token的问题,本文提供了一种解决方案,即通过UI自动化工具Selenium模拟用户登录过程,从浏览器的localStorage或sessionStorage中提取Token。 ... [详细]
  • 本文介绍了在Linux系统中如何使用不同的命令和工具来查看和检查端口状态,包括有权限和无权限情况下的操作方法。 ... [详细]
  • 拖拉切割直线 ... [详细]
  • Python中调用Java代码的方法与实践
    本文探讨了如何在Python环境中集成并调用Java代码,通过具体的步骤和示例展示了这一过程的技术细节。适合对跨语言编程感兴趣的开发者阅读。 ... [详细]
  • VS Code 中 .vscode 文件夹配置详解
    本文介绍了 VS Code 中 .vscode 文件夹下的配置文件及其作用,包括常用的预定义变量和三个关键配置文件:launch.json、tasks.json 和 c_cpp_properties.json。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置单节点的Redis服务,包括下载、解压、编译安装以及启动服务的具体步骤。 ... [详细]
  • 抽象工厂模式 c++
    抽象工厂模式包含如下角色:AbstractFactory:抽象工厂ConcreteFactory:具体工厂AbstractProduct:抽象产品Product:具体产品https ... [详细]
author-avatar
靠谱同学轻松1988
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有