问题标签 [meteor-slingshot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
89 浏览

meteor - 有什么方法可以在流星 js 中将图像上传到 Amazon S3 吗?

我用过CollectionFSand Slingshot,但没有一个有效。他们还有其他选择吗?

0 投票
0 回答
255 浏览

amazon-web-services - 使用流星弹弓将 blob 字符串上传到 aws

我在网上读到可以使用流星弹弓将 blob 字符串上传到 aws。唯一的问题是,每当我将 blob 传递给上传者时,我都会得到一个edgee_slingshot.js:283 Uncaught Error: Not a file.

我从我的裁剪器中得到这个对象:

然后我将字符串提取为我的 blob:

然后上传者:

通过控制台,我可以看到错误是从以下位置抛出的:

0 投票
0 回答
88 浏览

meteor - 流星弹弓访问在 sarafi 浏览器上定义问题

大家,当我使用 safari-web-browser 时,我有一些关于访问定义的问题。另一个网络浏览器在从 AWS S3 上传和下载时没有问题,但只有在使用 safari 时才有问题,有人对此有所了解吗?只是,让我知道你的解决方案,请。

更新,

当我使用其他语言时,我意识到了这种情况。如果使用英文文件名是可以的,但是当使用其他语言时,我收到错误消息。

0 投票
1 回答
123 浏览

javascript - 如何将来自客户端的额外数据传递到 slingshot s3storage?

我正在尝试将用户 ID 从服务器传递FlowRouter.getParam('id');到服务器以将文件上传到亚马逊。这是一个管理员帐户,因此我使用FlowRouter.getParam('id');来访问正确的用户个人资料信息。问题是我没有正确传递 id,所以这一切都只是错误并停止工作。

如何正确传递 id?

小路uploadFile.js

小路server/uploadFile.js

0 投票
1 回答
174 浏览

meteor - 从 localhost 将 Meteor 的 Slingshot 包与 Google Cloud 一起使用时出错

我正在尝试在我的网站上设置一个小上传部分,供用户上传个人资料图片。我正在将 Slingshot 与 Google Cloud 一起使用并从 localhost 进行测试,但出现以下错误:

在此处输入图像描述

我认为这个错误是因为我的 CORS 配置,所以我尝试了各种不同的设置,但没有任何效果。

这是我最近的 CORS 设置:

我也试过这样:

依然没有。和以前一样的错误。

这是我的 Slingshot 服务器代码:

这是客户端上传启动:

所有变量都检查出来。我的 pem 文件签出并且工作正常。因此,Google Cloud 或我设置 CORS 文件的方式肯定存在错误。

任何帮助,将不胜感激。

0 投票
2 回答
627 浏览

android - Meteor Slingshot Cordova/Android“错误:无法将文件上传到云存储 [-0]”

我有一个工作流星/科尔多瓦应用程序,它使用弹弓上传到 AWS/S3。我可以从浏览器和 iOS 上传和查看应用内照片。

但是,在 Android 上,我无法从 slingshot 提供的 AWS 链接加载照片并存储在我的数据库中,当我尝试上传照片时,我收到一条错误消息:

有没有什么我错过的/我应该为 android 配置 slingshot/我的应用程序的特定于 android 的东西?任何帮助将不胜感激。谢谢!

相关的客户端代码(减去文件限制):

相关的服务器端方法:

相关的服务器端指令(减去文件限制):

相关的 mobile_config.js 访问规则:

显示图片的相关模板:

上传图片的相关模板:

文件限制:

0 投票
1 回答
187 浏览

meteor - 流星弹弓谷歌存储

我有一个弹弓配置,这适用于 s3,但我需要迁移一个谷歌存储。我有这个

我认为,问题出在 GoogleAccessId 上,但我找不到这个值!。

错误是

edgee_slingshot.js:390 发布https://img_appengine.storage.googleapis.com/403 ()transfer@edgee_slingshot.js:390(匿名函数)@edgee_slingshot.js:294(匿名函数)@edgee_slingshot.js:325(匿名函数)@dynamics_browser.js:51_maybeInvokeCallback@livedata_connection.js:446receiveResult@livedata_connection.js :466_livedata_result@livedata_connection.js:1631onMessage@livedata_connection.js:274(匿名函数)@stream_client_sockjs.js:172_.each._.forEach@underscore.js:105self.socket.onmessage@stream_client_sockjs.js:171REventTarget.dispatchEvent@sockjs -0.3.4.js:87SockJS._dispatchMessage @ sockjs-0.3.4.js:1072SockJS._didMessage @ sockjs-0.3.4.js:1130that.ws.onmessage @ sockjs-0.3.4.js:1277 autoform-slingshot。咖啡:143 errorClass {错误:“ - 403”,原因:“无法将文件上传到云存储”,详细信息:未定义,消息:“无法将文件上传到云存储 [ - 403]”,错误类型:“Meteor.Error”}详细信息:未定义错误:“ - 403”errorType:“Meteor.Error”消息:“无法将文件上传到云存储 [ - 403] “原因:“无法将文件上传到云存储”堆栈:(...)获取堆栈:堆栈()参数:nullcaller:nulllength:0name:“获取堆栈”原型:()设置堆栈:堆栈()原型:错误(匿名函数)@ autoform-slingshot.coffee:143(匿名函数)@edgee_slingshot.js:369

0 投票
0 回答
71 浏览

http - meteor-slingshot/S3:HTTP 请求如何在 slingshot 和 S3 之间工作

我是一名初级开发人员,试图了解从 Web 应用程序上传文件时某些“后端”进程的工作原理。

我在一个流星项目中使用 edgee:slingshot 将图像上传到 Amazon S3。我的理解是,从 slingshot 上传的文件会向 S3 发出 POST 请求,以便将文件上传到存储桶。我从 Chrome 控制台确认了这一点,我可以在其中看到到 S3 的 POST 请求(在预检 OPTIONS 请求之后)。

然而,上传图片后,S3 中的 POST 请求计数增加了 4。我没有上传任何其他内容,存储桶中只有一个其他文件没有在任何地方使用。

这是正常行为吗?我不知道 HTTP 请求的具体细节,所以这有点神秘。我很感兴趣,因为 S3 根据(除其他外)请求的数量来定价。

额外问题:上传图片后,GET 请求的数量也增加了(增加了 3,而不是 4)。这是正常行为吗?slingshot上传函数返回bucket中图片的下载地址。我不认为我在发出任何 GET 请求。

是否有某种幕后验证/批量上传导致这种情况?

谢谢您的帮助。

0 投票
1 回答
260 浏览

meteor - 在将文件上传到 Amazon S3 之前处理和合并文件

我正在使用meteorjs 开发一个网络平台,它允许我将多个文本/纯文本(例如.txt 和.csv 文件)上传到我的亚马逊S3 存储桶。

目前我的平台支持多个文件上传,通过使用for循环和meteor-slingshot顺序上传,直接上传到我的s3。

我正在尝试做的事情:
我需要在上传到 S3 之前将文件合并到一个最终文件中,这样我就可以只上传一个文件而不是上传多个文件(文件必须合并为一个文件)。

我的想法:

  1. 我曾考虑在将文件上传到 S3 之前将文件上传到我自己的服务器,然后使用cat file1.txt file2.txt > merged_file.txtlinux 之类的东西来合并它们并以某种方式检索该文件,但这需要更长的时间,因为我们需要将文件上传到我的服务器,然后将合并后的文件上传到 S3 存储桶。

  2. 使用fs.appendFilefrom 节点合并文件,但我不知道它是否可行,因为文件可能高达 20/25mb,读取它们并附加信息需要一些时间。

我认为 javascript 可能无法直接处理这个问题,这就是为什么我考虑使用 sh 命令或 c++,因为 nodejs 核心。

你能推荐我一个更好的方法吗?
有没有更好的方法来处理这个过程?

0 投票
1 回答
74 浏览

meteor - 流星弹弓拒绝 Libres3 访问

我有一个 3 节点集群,SX 在 Ubuntu v14.04.5 LTS 上运行,端口为 80 和 443,Libres3 运行在同一服务器上,端口为 8008 和 8443。

libres3 1.3-1-1~wheezy

sx 2.1-1-1~wheezy

s3cmd 信息 s3://test-dev

s3://test-dev/ (bucket): Location: us-east-1 Payer:
BucketOwner Expiration Rule: none policy: { "Version": "2012-10-17", "Statement": [ { "Effect" :“允许”、“主体”:“ ”、“操作”:“s3:GetObject”、“资源”:“arn:aws:s3:::test-dev/ ” } ] } cors: OptionPUTPOSTGETHEAD3000 * ACL: admin :FULL_CONTROL ACL:测试:FULL_CONTROL

我正在尝试使用 Slingshot 包从 Meteor 应用程序中放置文件:https ://github.com/CulturalMe/meteor-slingshot

但得到

'访问被拒绝':“9 月 6 日 11:10:46:主要:回复代码 403:访问被拒绝libres3_1ff0aa644987498111ea4c91bca7b532_13817_587_1473174646.21 AccessDenied

我可以使用具有相同凭据的 S3 浏览器和 Cloudberry Explorer 并毫无问题地访问存储桶。

有什么想法或方向可以解决从网络上放置文件的问题吗?谢谢,-马特