#6529·uppy

@uppy/AWS-s3: setOptions() 会默默忽略签名选项

作者: qxprakash创建于 2026年9月4日更新于 2026年9月5日
标签AWS S3

4795的后续,在v6中另作固定.

问题

设定备选案文()'对签署请求'、获得证书'和共同终点 ' 没有任何影响。 客户端曾建于"Install ()",并保留自己的回调副本,因此每次上传都使用正本. 无所投出或警告.

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你来干什么? uppy.use( AwsS3, { sign request: sign A, should Use Multipart: fult }) 互联网档案馆的存檔,存档日期2013-12-21. uppy.getPlugin ('AwsS3'). set options ({ sign request: signB}} ) 页面存档备份,存于互联网档案馆 等待 uppy.upload () // signA 运行


其他选项(应该使用Multipart,生成ObjectKey,得到ChunkSize,允许Meta Fields)是每个文件重读并进行更新,因此无法分辨哪些选项是活的,哪些是被冻结的.

这是一个有文献记载的API([set options](https://uppy.io/docs/uppy/# setopysopts)),我们的[反应指南](https://uppy.io/docs/react/#example-uppys-opys-options-distructive-based-on-props)完全建议这种模式将组件值传递到插件中:

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你来干什么?
auppy.getPlugin('Webcam'). set options({模式:道具.webcamModes}})

它还在v5中工作: AwsS3 超過設定可選擇性 ()来重建其Companyion客户端并重新包装所有8个签名回调,因此v5代码可以在运行时互换一个签名器而默默地停止了在v6上的工作.

** 说明为什么有人需要这个**

一个依赖于组件状态的签名者,这是第4795起案例的最初报道:

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你来干什么? / 用户选择的文件夹决定对象去向 const [文件夹, setFolder] = 使用状态('inbox')

使用效果( ()) {{{ uppy.getPlugin ('AwsS3'). set options ({). 签名请求 :( req) QQ 获取('/s3/ sign', { 方法 : “ POST ” , 机构: JSON.stringify({.req,文件夹}), (r) r.json()),(r),(r),(r),(r),(r),(r),(r),(r),(r),(r),(r),(r),(r),(r),(r),(r),(r),(r.json),(r.json),(r.),(r.json),(r.),(r.json),(r.),(r.),(r.json),(r.),(r.),(r.json),(r.),(r.),(r.),(r.),(r.),(r.),(r.),(r),(r.),(r.),(r.),(r.,(r.),(r.),(r.),(r.),(r.),(r.),(r.),(r.),(r.),( ) (中文(简体) ). [文件夹]


今天上传持续以第一个文件夹值签名 。


** 两个可能的出值**:

A. 支持它:当签名选项改变时重建客户端. 注意`Set options ()'合并而不是取而代之,而`initS3Client ()'则取出当前第一个关键字(`company Endpoint ' - get Credititis'- sign Request'),因此切换模式需要明确的处理。 另外,每个S3Uploader都会在构建时捕获客户端,因此重建只会影响之后开始的上传.

B. 拒绝 : 扔出或警告这些密钥, 并将其记录为安装时间 .

内容来源: transloadit/uppy