将 .net 上的 AWS 开发工具包与 localstack 结合使用(TransferUtility/S3 - 设置端点)

2024-07-01

我有本地堆栈(https://github.com/localstack/localstack https://github.com/localstack/localstack)正在运行,并且能够使用 aws s3 cli 将文件上传到其中。

我想要做的是将 .NET AWS SDK 与 localstack 结合使用。我想要以下代码将文件上传到 localstack 中:

        using (var tfu = new TransferUtility())
        {
            await tfu.UploadAsync(new TransferUtilityUploadRequest
            {
                Key = key,
                BucketName = bucketName,
                ContentType = document.ContentType,
                Headers = { ["Content-Disposition"] = "attachment; filename=\"test.txt\"" },
                InputStream = stream
            });
        }

我的问题是我不知道如何设置端点以便 SDK 使用 localstack 而不是 aws。显然你可以设置AWSEndpointDefinition在 AWS SDK 文档中提到的 appSettings.config 中,例如:

<add key="AWSEndpointDefinition" value="C:\Dev\localstack\endpoints.json"/>

但是我不知道这个 endpoints.json 配置应该是什么样子。我尝试使用这个文件:

https://raw.githubusercontent.com/aws/aws-sdk-net/master/sdk/src/Core/endpoints.json https://raw.githubusercontent.com/aws/aws-sdk-net/master/sdk/src/Core/endpoints.json

当我这样做时,一旦我新了一个TransferUtility类我得到一个空引用异常 - 这是在我将任何内容指向我的本地堆栈设置之前。

AWS ASK 的版本是 3.3.0。

另一件需要注意的事情是,在文档中的某些地方,暗示配置应该是 xml 文件而不是 json,但是,当我尝试使用 xml 文件时,我在更新时会遇到不同的异常TransferUtility: '输入字符串中无效字符 '


您可以通过创建 S3 客户端并将其传递给 TransferUtility 构造函数来轻松覆盖它。

var config = new AmazonS3Config { ServiceURL = "http://localhost:4572" };
var s3client = new AmazonS3Client(config);

如果您的本地堆栈对 S3 使用不同的端口,请不要忘记替换 URL。

希望这可以帮助。

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

将 .net 上的 AWS 开发工具包与 localstack 结合使用(TransferUtility/S3 - 设置端点) 的相关文章

  • 在哪里可以找到 .NET Framework 类图?

    我只需要一个框架结构的文件 图片 pdf或其他类型的打印文件 在学习 Net框架时非常有用 2007 年 11 月版 NET框架 3 5 通用命名空间和 类型海报 Overview NET Framework 3 5 常见问题 命名空间和类
  • 当找到路由/url 但未找到其背后的资源时返回什么?

    当路由customer 1存在但customer搜索背后的资源 实体不存在时 我应该返回 404 吗 我的意思是路线存在 或者我应该返回一个 204 无内容 因为我找不到客户 结果为空 微软样本 public IHttpActionResu
  • 浮点指令异常——FLDZ故障?

    I am trying to debug the problem I posted earlier here C and pin tool very weird DOUBLE variable issue with IF statement
  • WPF PasswordBox 中的密码不可绑定的安全优势?

    我只是偶然发现一个事实PasswordWPF 的属性PasswordBoxes 不可绑定安全原因 这使得在 MVVM 上下文中使用它们相当麻烦 答案如https stackoverflow com a 1493330 3198247 htt
  • 我应该如何继承IDisposable?

    为了保护无辜者 班级名称已更改 如果我有一个名为 ISomeInterface 的接口 我还有继承该接口的类 FirstClass 和 SecondClass FirstClass 使用必须处置的资源 二等舱没有 那么问题来了 我应该从哪里
  • 如何在C++中从Imagemagick图像获取缓冲区

    我正在使用 ImageMagick 库进行图像处理 我需要加载 bmp 图像 将其转换为 jpeg 将其加载到缓冲区中并通过网络发送 但是 我在 ImageMagick 中找不到任何可以在缓冲区中转换和存储数据的支持函数 我只能写入文件 尝
  • 为什么 _popen 在这里可以工作,而 boost::process 却不能?

    我在 Windows 上使用 popen 有以下工作代码 m pGNUPlot popen gnuplot bin gnuplot exe w fprintf m pGNUPlot set term win n fprintf m pGNU
  • 如何从源代码编译picoProlog?

    我是计算机科学专业的学生 正在学习 Prolog 逻辑编程 我发现了一个有趣的 Prolog 解释器 picoProlog http spivey oriel ox ac uk corner Logic Programming http s
  • 如何在类型依赖于派生类的基模板类中声明成员?

    给定一个使用 CRTP 的基类 我正在考虑在基模板类中声明一个成员 其中类型依赖于派生类 虽然以下内容按预期工作 template
  • C++ 流到内存

    我怎样才能创造std ostream and std istream对象指向我分配和管理的一块内存 我不希望流释放我的内存 我正在考虑使用rdbuf gt pubsetbuf 修改其他流之一 例如sstringstream 不过我认为str
  • 将 HTML 渲染为图像

    我正在基于动态输入和裁剪图像生成优惠券 并且现在使用 ntml 和 css 显示优惠券 问题是 打印这已成为一个问题 因为打印时背景如何消失以及其他问题 所以我认为最好的解决方案是能够基于html生成图像 或者设置某种接受字符串和图像的模板
  • 反序列化 jQuery 序列化表单

    我正在尝试将表单输入传递到 WebMethod 中并执行某些操作 我用了jQuery 序列化 http api jquery com serialize
  • 如何在单次调用时向 AWS Sagemaker Endpoint 发送多个请求?

    我已在 SageMaker 端点上部署了深度学习模型 并且可以使用以下命令请求 获取答案sagemaker client invoke endpoint 但每一个invoke endpoint接受单体 如何发送多个正文以获得单个请求的多个结
  • C# 替换 Byte[] 中的字节

    替换字节数组中的某些字节的最佳方法是什么 例如我有bytesFromServer listener Receive ref groupEP 我可以做BitConverter ToString bytesFromServer 将其转换为可读格
  • 将 byte[] 作为文件打开,而不先将其实际保存为文件

    打开以 byte 形式存储在数据库中的 Word 文件的最佳方法是什么 我必须将一些文档存储在 Access 数据库中 Word 文件 2003 及更高版本 并存储在严格通过 CD 运行的应用程序上 不幸的是 它们必须位于数据库中 并且不能
  • 如何更改母版页中控件的值?

    如何更改控件的值 例如用户控件中的文字 并且该用户控件位于母版页中 我想从内容页更改该文字的值 System Web UI UserControl this Page Master FindControl ABC FindControl X
  • C 中的隐式类型转换

    我在维基百科上偶然发现了以下示例 http en wikipedia org wiki Type conversion Implicit type conversion http en wikipedia org wiki Type con
  • C:分段错误:GDB:<读取变量时出错>

    我有一个函数shortestPath 它是Dijkstra算法的修改实现 用于我正在为comp2类开发的棋盘游戏AI 我浏览了网站并使用 gdb 和 valgrind 我确切地知道段错误发生的位置 实际上几个小时前就知道了 但无法弄清楚是什
  • 通过构建服务器进行 Nuget 恢复“无法找到版本”

    我有一个 VS 解决方案 作为 TeamCity Build 的一部分 我们从私有 NuGet feed myget 和公共 feed nuget org 恢复包 大多数软件包都可以正常恢复 但它会挂在下面的 WebApi 和 Mono S
  • 如何使用 gcc 的 -I 命令添加递归文件夹

    有没有办法使用 gcc 的 I 命令并通过给出 a 将所有路径添加到搜索路径root目录 我正在尝试使用 gcc E myfile c查看宏展开式 但是myfile c包含不同目录中的一大堆其他头文件 并且因为我在 vim 中执行此命令 所

随机推荐

  • Firebase 和 Google Play 服务之间要使用哪些依赖项?

    我最近开始使用 Firebase 但我无法完全理解它与 Google Play Services 的关系 我知道Firebase是一个移动平台 在Android上它是基于Google Play Services的 但是为什么有一些模块与Go
  • 如何在JNA中填充结构体数组?

    我正在尝试在 JNA 中使用以下 Windows API UINT WINAPI GetRawInputDeviceList Out opt PRAWINPUTDEVICELIST pRawInputDeviceList Inout PUI
  • Java 中的简单 Kerberos 客户端?

    Google Chrome 和 IE 等应用程序可以透明地处理 Kerberos 身份验证 但是我找不到一个 简单 的 Java 解决方案来匹配这种透明度 我发现的所有解决方案都需要存在 krb5 conf 文件和 login conf 文
  • 找不到 PHPUnit 的 TextUI/command.php

    我为我的 symfony2 项目安装了 phpunit 如下所示 如何使用从composer安装的phpunit https stackoverflow com questions 13764309 how to use phpunit i
  • 使用 PHP 解析 XML 导航站点地图

    我正在从 XML 文件实现 PHP 站点地图解析器 我做得相对不错 但是 我需要解析器更加动态 我需要实现一个递归函数 它将继续循环找到的每个 child node 一个节点可以在另一个 child node 中包含许多 child nod
  • 与 ADO.NET、SQLite 和 TSQL 的只读连接

    我的代码通过一个连接读取并通过另一个连接写入 我不想意外地使用读取连接进行写入 我怎样才能使连接只读 我正在使用 SQLite ATM 并将在原型结束时将代码部分转换为 tsql 您可以将 Read Only True 添加到只读连接 Da
  • WTL 子窗口事件处理

    我正在开发窗口应用程序 因为我在左侧和右侧有 2 个子窗口 我想分别处理两个窗口的输入事件 如何实现 My code class EditorWindow public DxWindow public CSplitterWindow m v
  • 模块化应用程序堆栈中的虚拟数据和单元测试策略

    如何管理用于测试的虚拟数据 将它们保留在各自的实体中 在一个单独的测试项目中 使用外部资源的序列化程序加载它们 或者只是在需要的地方重新创建它们 我们有一个应用程序堆栈 其中包含多个模块 这些模块依赖于另一个模块 每个模块都包含实体 每个模
  • 如何在另一个 php 脚本的后台运行 php 脚本(如更新按钮)

    当我按下 更新 按钮时 我将如何运行一个 php 脚本 然后它将运行脚本 x1 php 没有回显或其他输出 成功或失败 然后更新当前页面 我知道更新部分可以使用 ajax 完成 但我不确定如何以及如何让 x1 php 脚本在后台运行并在完成
  • 创建类路径资源 META-INF/cxf/cxf.xml 中定义的名为“cxf”的 bean 时出错

    我只是尝试使用 Apache CXF 和 Spring by Maven 运行一个简单的 Web 服务应用程序 但是在启动 Tomcat 时出现以下错误 org springframework beans factory BeanCreat
  • 使用 PyQt5/Pyside2 设置重复的 SVG 图案作为主窗口/Qwidget 背景

    我已经通过生成了 SVG css 代码http www heropatterns com http www heropatterns com 我正在尝试使用它作为我的主窗口 Qwidget 的背景 我希望背景随着窗口变大或缩小而调整大小 我
  • 以编程方式解析和编辑 C++ 源文件

    我想以编程方式解析和编辑 C 源文件 我需要更改 添加代码的某些部分 即函数 类块等 中的代码 我也 最好 能够得到评论 我想做的部分事情可以用下面的代码来解释 CPlusPlusSourceParser cp new CPlusPlusS
  • 为什么线性读-混洗写并不比混洗读-线性写快?

    我目前正在尝试更好地了解内存 缓存相关的性能问题 我在某处读到 内存局部性对于读取比对于写入更重要 因为在前一种情况下 CPU 必须实际等待数据 而在后一种情况下 它可以将它们发送出去并忘记它们 考虑到这一点 我做了以下快速而肮脏的测试 我
  • 使用 ctypes 的 python 枚举模块

    之前enum模块已存在 c int或相关类型经常被用作替代枚举 但这没有也没有检查类型 现在 python 有一个enum模块 有没有办法直接使用它ctypes 是的 我们可以轻松创建自己的 CEnum 类 这要归功于 ctypes 允许我
  • 如何获取picturebox非公开成员的值?

    我需要从 picturebox 的非公共成员获取图像矩形的值 如何获得该值 提前致谢 这是使用反射获取值的方法 PropertyInfo pInfo pictureBox1 GetType GetProperty ImageRectangl
  • UIModalTransitionStyleFlipHorizo​​ntal 横向垂直翻转

    在横向模式下 从一个视图 导航控制器堆栈的一部分 转换到另一个视图作为模态视图 并将 UIModalTransitionStyleFlipHorizo ntal 设置为 modalTransitionStyle 视图在横向模式下垂直翻转 动
  • 在非 Spring-Boot 应用程序中使用 @ConfigurationProperties

    我正在尝试使用 ConfigurationProperties 在我的 Spring MVC 应用程序 非 Spring Boot 中启用配置绑定 到目前为止我做的唯一一件事就是添加了 Mavenspring boot依赖于我的项目 以获得
  • 如何根据父字段的值限制子字段的选择?

    我有几个相当复杂的表单 它们依赖于模型层次结构来分配ForeignKey价值观 我需要根据其父字段的值限制子字段可用的选择 问题是父字段的值可能来自初始数据 GET 请求 or来自绑定数据 POST 请求 因此 我最终多次复制了这种模式 c
  • 使用 fork/execvp 和系统调用之间的区别

    使用 system 执行二进制文件与使用 fork execvp 组合执行二进制文件有什么区别 安全性 可移植性 性能方面是否存在差异 系统还使用了一个fork exec 组合 如果你这样做fork exec您自己可以与正在运行的进程并行执
  • 将 .net 上的 AWS 开发工具包与 localstack 结合使用(TransferUtility/S3 - 设置端点)

    我有本地堆栈 https github com localstack localstack https github com localstack localstack 正在运行 并且能够使用 aws s3 cli 将文件上传到其中 我想要