AmazonS3下载:直接iOS或Web服务节点Js。?

AmazonS3下载:直接iOS或Web服务节点Js。?,ios,mysql,node.js,amazon-s3,Ios,Mysql,Node.js,Amazon S3,我正在创建一个连接到后端节点js web服务的ios应用程序。这些应用程序允许用户上传图片,这些图片通过AFnetworking和my node js后端上传到mysql(文件路径)和amazon S3(实际图像)。但是,要将图片下载到uitableview中,我想知道是否最好使用post请求通过后端处理下载并从后端返回图片,或者使用aws sdk在客户端处理所有内容并加载图片。当然,这两个过程都是异步处理的,我首先从mysql数据库获取对象,然后使用文件名作为键返回图像。哪个选项更好?好问题

我正在创建一个连接到后端节点js web服务的ios应用程序。这些应用程序允许用户上传图片,这些图片通过AFnetworking和my node js后端上传到mysql(文件路径)和amazon S3(实际图像)。但是,要将图片下载到uitableview中,我想知道是否最好使用post请求通过后端处理下载并从后端返回图片,或者使用aws sdk在客户端处理所有内容并加载图片。当然,这两个过程都是异步处理的,我首先从mysql数据库获取对象,然后使用文件名作为键返回图像。哪个选项更好?

好问题

原创创意

我建议在node.js服务器上设置重定向。因此,设备会点击服务器,并从AWS获得重定向和下载。我相信你也可以在上传时这样做[编辑:不,上传不起作用,因为重定向会导致帖子变成GET,我认为(需要做一些研究)]

如果你可以在不更新应用程序的情况下从AWS切换到另一台主机,就可以这样做。但是如果您更关心性能,那么可以直接从AWS下载

新答案


直接上传和下载到AWS服务器。然而,我过去所做的是提供所有AWS参数,如AWSAccessKeyId、策略、签名等。。。通过名为AWSParams的JSONDict从服务器发送到客户端,客户端获取这些参数并在上载请求中发送。

这种重定向到底是如何工作的,我是否还需要向amazon节点模块提供必要的凭据和参数才能上载或下载文件?或者如果没有,我如何将我的iOS请求直接重定向到AmazonS3?是的,在仔细考虑之后。重定向除了GET请求外,对其他任何东西都不起作用,所以我认为在上传时您不能这样做。所以忽略我的答案,因为上传部分。可能最好直接转到服务器,因为无法隔离上载过程。@brianScroggins感谢您发现上载重定向的问题。我应该仔细检查一下如何重定向更改非GET请求。@brianScroggins噢,我发现307重定向应该会导致客户端在新位置发布相同的信息,但实现不稳定。