搜索
首页web前端js教程transloadit-关键概念开始

Getting Started with TransloadIt - Key Concepts

transloadit-关键概念开始

钥匙要点

    > TraStloadit是有益的,因为它允许您专注于应用程序的核心功能,减少服务器上的负载,消除服务器上其他库或程序的需求,并减轻与Web服务器上的文件上传相关的安全风险。但是,它引入了额外的失败点,将敏感文件委托给第三方,并征收财务成本。 TrainsLoadit通过汇编指令操作,该说明告诉服务在文件上执行什么操作。这些说明由“机器人”执行,该说明可以从各种源导入文件,过滤传入文件,在图像文件上执行任务,在视频和音频文件上执行操作,并将组件的结果传输到某种形式的永久存储中。 🎜> > Transloadit是一项文件处理服务,主要用于处理图像,视频和音频。
  • >它允许您在这些文件上执行各种操作 - 由所谓的“机器人”执行;例如,调整和优化图像大小,从视频中提取缩略图或将文件从一种格式转换为另一种格式。
  • Transloadit还允许您直接将文件上传到其服务器进行处理,而不是通过您的应用程序进行处理。确实,您可以完全绕过服务器,将处理的文件直接传输到Amazon S3存储桶,Rackspace Cloud Files帐户或通过(S)FTP转移到您自己的服务器。因此,换句话说,您的应用程序只需要关注在哪里找到所得文件,而无需直接处理或直接存储它们 - 非常适合运行分布式应用程序或群集上的应用程序。
>在本教程中,我们将详细了解Transloadit,尤其是使用它来处理图像。我们将查看一些关键概念,例如构建“汇编说明”,以告诉它我们想在上传的图像文件中发生什么。我们将“劫持”文件上传表格,直接将文件发送到Transloadit,运行一组指令以生成许多“导数”(不同尺寸的图像),然后将它们保存到Amazon S3存储桶中。最后,我们将研究如何使用这些操作的结果来通知我们有关新生成的文件的应用程序,以便我们可以相应地更新数据库。

>在我们详细介绍Transloadit之前,值得退后一步,讨论您为什么首先要使用第三方服务来对类似的事情,而不是自己实施。

为什么要使用第三方服务?

>

>图像处理并不是很难实施自己,而且有各种各样的图书馆。那么,您为什么要使用第三方服务来处理它?

一方面,它可以让您专注于应用程序的真正意义。当您可以将开发工作集中在关键任务功能上时,为什么要花费更多的时间和精力,例如用户个人资料照片功能?

图像处理可能是相当大的资源密集型。特别是,调整大型图像大小会吞噬很多记忆。使用诸如TransLoadIt之类的服务可以减轻服务器上的负载。

    >
  • 处理文件通常需要在服务器上安装其他库或程序;例如,用于图像的GD或ImageMagick或用于视频和音频的FFMPEG。通过使用第三方服务,无需担心安装,配置或维护它们。 可以在后台运行

    >
  • transloadit“作业”,而不是按下您的应用程序执行。虽然有解决方案可以在您自己的应用程序中解决此问题 - 例如,诸如RabbitMQ或Beanstalkd之类的队列,或Gearman等工作服务器,但使用TransLoadit使您摆脱了实现它们所需的其他开发工作和安装步骤。 🎜>
  • >

    throadit服务器已高度优化以处理文件上传,因此性能可能比您自己实施。

  • >允许将文件上传到您的Web服务器,还具有各种安全含义,您必须考虑这些含义。通过使用第三方服务,这些风险会有所缓解。
  • >
  • 是分散的。您可以设置它,以使上传的文件通过服务并直接直接进入S3等外部存储解决方案,而无需存储在Web服务器上。尽管这在小型应用程序中似乎并不是一个巨大的优势,但是一旦增长到拥有多个服务的地步,您将获得好处。

  • >取决于您的申请,首选的托管解决方案,您的专业知识或您手上碰巧的时间,所有这些都不适用。也许没有;这并不是所有情况下的最佳解决方案。
>

>自然,有缺点。这里有几个:

它引入了一个额外的失败点。
  • 这可能意味着将敏感文件委托给第三方。
  • >最后,有经济成本。
  • 考虑所有这些利弊,让我们开始详细了解该服务。然后,在第二部分中,我们将介绍如何使用它的实践示例。
  • >
  • 开始,transloadit

Transloadit提供一个免费的沙箱帐户,可为您提供1GB的能力进行游戏,这将足以与本教程一起跟随,然后再进行一些。提供了许多付费计划,可为您提供每月不同数量的容量。付费计划在撰写本文时起价为每月19美元。

>容量的实际定义根据您使用的服务的方式而变化。为了说明在图像处理的上下文中的含义,您可以通过将原始文件的文件大小添加到所得处理的图像的总大小中来确定处理一个特定图像上传的用法。 因此,假设您上传了一个800KB的图像,该图像又用于生成大版本的400KB,中型版本的200KB和30KB的缩略图。如果将最小的版本用作下一个调整大小的输入,则将使用(800kb 400kb)(400KB 200KB)(200KB 30KB)(200kb 30kb)= 2,030kb,to your limim限制。当您开始使用视频或音频时,这些计算变得更加复杂,因此您可能想咨询他们的网站。

如果您打算跟进并在第二部分中浏览实践示例,那么现在可能是注册的好时机。前往网站并命中“入门”。

现在,让我们看一下构成服务的一些概念和组件,以便更好地理解过程。

概念

汇编

一个程序集本质上是一组指令,该指令告诉Transloadit服务您希望他们在特定文件(或一组文件)上执行哪些操作。>

在实践中,您可能会为不同类型的文件创建不同的汇编指令集。此后,您可能会为子类型创建不同的汇编指令。例如,用户配置文件图片 /化身可能需要一组特定的尺寸,并且配置文件横幅横幅机构完全不同。因此,在这种情况下,您将为每种都创建一组汇编指令。

汇编指令包含一个步骤列表,准确定义了要执行的处理以及按什么顺序进行。每个步骤均由机器人执行。

机器人

“机器人”就像一个工人,执行某种处理。有多种不同类型的机器人:

>导入机器人可以从各种来源中获取文件,而不仅仅是通过基于表单的文件上传。例如,您可以使用(S)FTP或从Amazon S3存储桶下载来创建一个通过HTTP导入文件的机器人。>

汇编流逻辑机器人可以用于过滤传入的文件 - 例如,您可以设置一个机器人以拒绝不是图像的文件。

>图像机器人在图像文件上执行许多不同的任务,最著名的是调整大小。也有用于优化图像文件或屏幕截图的机器人。

>视频和音频机器人对那些特定的文件类型执行操作。因为本教程专注于图像,所以我们不会详细介绍这些图像,而是在稍后对后续文章进行调整。

>

>文件导出机器人用于将组件的结果转移到某种形式的永久存储中。重要的是要注意,Transloadit不会托管您的文件;尽管它们使它们在处理后通过S3存储桶可下载,但不会将它们存储在24小时以上。确保文件存储在您控制的某个地方是您的责任。您可以设置一个机器人将文件传输到Amazon S3存储桶,将文件传输到Rackspace Cloud Files,或使用(S)FTP。

构建装配说明

汇编说明以JSON格式定义,或作为可以与各种可用库之一一起使用的哈希。大多数情况下,您可能会使用官方的jQuery插件与客户端应用程序中的服务进行交互,但是还有其他选项可用。您不一定要从客户端应用程序中使用它 - 也有服务器端库。

>

在第二部分中,我们将研究如何详细构建汇编指令。

>模板

汇编说明告诉机器人如何处理您的文件,但还包括运行它们所需的任何其他信息。当涉及到文件导出步骤时,这是一个真正的问题,因为他们需要凭证可以访问您的S3存储桶或(S)FTP服务。显然,在客户端代码中定义这些是灾难性的,因此,您要使用模板。

>

>而不是在调用TransLoadIt API时(例如,使用jQuery插件时)定义汇编指令,而是可以创建一个包含Transloadit服务器上相关的汇编指令的JSON文档,然后通过其唯一ID引用该模板。模板是加密的服务器端,以获得其他安全性。

>

>您还可以在运行时合并其他参数,或将现有参数覆盖为模板 - 一直以来,保持您的敏感信息,例如S3凭据可以安全地撬开眼睛。

>

>签名

>签名围绕着在客户端代码中公开TransloadIT身份验证凭证的问题,与模板保护与存储相关的凭据几乎相同。

>

>签名本质上是您在服务器上生成的短暂访问令牌,将其传递到客户端应用程序,然后使用服务进行身份验证。如果有人要获得该价值,那么它将很快变得无用。签名也被“绑定”到一组特定的汇编指令或一个特定的模板,使其更加安全。

>变量

>您可以在汇编说明中使用变量。这些在确定已处理文件的文件名时特别有用。因此,例如,如果您要调整上传的用户头像,则可以提供用户ID或用户名来构成生成的文件名称的一部分。稍后,我们将看到您可以定义的各个步骤的名称,也可以用作变量。

使用表单字段

当您使用从客户端应用程序(例如上传表单)的Transloadit时,可以从表单字段派生变量。因此,在上面的上传用户头像的示例中,您可以将用户ID放置在隐藏的表单字段中,然后将其合并到发送到TransLoadit的服务器的指令中。

摘要

在第一部分中,我们对Transloadit服务进行了高级研究。我们已经研究了它可以做什么,以及使用此类服务​​来执行您可以实施自己的任务的一些优缺点。

>

>我们已经研究了您需要理解的一些概念,以充分利用Transloadit,并且有了背景知识,我们准备开始建立一个实用的例子。请继续关注第二部分。

经常询问有关图像上传和操纵的问题

什么是traverloadit,如何工作?

Transloadit是一种多功能服务,允许用户以各种方式处理文件上传并操纵数据。它通过提供强大的API来起作用,开发人员可以将其集成到其应用程序中。此API允许上传,处理和存储文件,包括图像,视频和文档。 TransLoadit支持广泛的操作,例如调整图像大小,编码视频和从文件中提取元数据。这是一项基于云的服务,这意味着它可以扩展以处理大量数据,并且不需要任何服务器端设置。

>

>如何将transladit集成到我的应用程序中?将TRANSLOAT集成到您的应用程序中涉及使用Transloadit API。该API提供了一组端点,您可以用于上传和处理文件。您需要从应用程序中将HTTP请求发送到这些端点。 TransLoadIt为各种编程语言提供了SDK,包括JavaScript,Python和Ruby,可以简化集成过程。

>

>

transloadit支持哪些类型的文件操作?文件操作。对于图像,它可以调整,裁剪和施加过滤器。对于视频,它可以编码,剪切和添加水印。它还可以从文件中提取元数据,将文档转换为不同格式,等等。确切的功能取决于特定的操作和文件类型。

> TraNSLOADIT如何处理安全性和隐私?

Transloadit非常重视安全和隐私。所有数据传输均使用SSL/TLS加密,并且文件牢固存储在云中。 Transloadit还符合GDPR和其他数据保护法规。用户可以控制他们的数据,并且可以随时删除数据。

> Transloadit可以处理大量数据吗?这是一项基于云的服务,这意味着它可以扩展以满足应用程序的需求。无论您是处理几个文件还是数百万,transloadit都可以处理。

> traverloadit支持哪些编程语言?

​​

transloadit为几种编程语言提供SDK,包括JavaScript,Python,Ruby,Ruby, Java和PHP。这意味着您可以将traverloadit集成到应用程序中,无论您使用的语言如何。

traverloadit的成本是多少?

Transloadit提供了几个定价计划,从免费到企业级别。成本取决于您需要处理的数据量和所需的功能。您可以在Transloadit网站上找到更多信息。

>我可以使用Transloadit进行视频处理吗?您可以编码视频,剪切,添加水印等等。 Transloadit可以以各种格式处理视频,包括MP4,AVI和MOV。

> TRANSLOADIT提供客户支持吗?您可以通过电子邮件或他们的网站与他们联系。他们还提供了广泛的文档和社区论坛,您可以在其中提出问题并从其他用户那里获得帮助。

我可以在移动设备上使用Transloadit吗?

>

是的,可以在移动设备上使用TransloadIt 。您可以将TraaditiT API集成到移动应用程序中,从而可以直接从设备上传和处理文件。 TransLoadit支持iOS和Android。

>

以上是transloadit-关键概念开始的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
在JavaScript中替换字符串字符在JavaScript中替换字符串字符Mar 11, 2025 am 12:07 AM

JavaScript字符串替换方法详解及常见问题解答 本文将探讨两种在JavaScript中替换字符串字符的方法:在JavaScript代码内部替换和在网页HTML内部替换。 在JavaScript代码内部替换字符串 最直接的方法是使用replace()方法: str = str.replace("find","replace"); 该方法仅替换第一个匹配项。要替换所有匹配项,需使用正则表达式并添加全局标志g: str = str.replace(/fi

jQuery检查日期是否有效jQuery检查日期是否有效Mar 01, 2025 am 08:51 AM

简单JavaScript函数用于检查日期是否有效。 function isValidDate(s) { var bits = s.split('/'); var d = new Date(bits[2] '/' bits[1] '/' bits[0]); return !!(d && (d.getMonth() 1) == bits[1] && d.getDate() == Number(bits[0])); } //测试 var

jQuery获取元素填充/保证金jQuery获取元素填充/保证金Mar 01, 2025 am 08:53 AM

本文探讨如何使用 jQuery 获取和设置 DOM 元素的内边距和外边距值,特别是元素外边距和内边距的具体位置。虽然可以使用 CSS 设置元素的内边距和外边距,但获取准确的值可能会比较棘手。 // 设置 $("div.header").css("margin","10px"); $("div.header").css("padding","10px"); 你可能会认为这段代码很

10个jQuery手风琴选项卡10个jQuery手风琴选项卡Mar 01, 2025 am 01:34 AM

本文探讨了十个特殊的jQuery选项卡和手风琴。 选项卡和手风琴之间的关键区别在于其内容面板的显示和隐藏方式。让我们深入研究这十个示例。 相关文章:10个jQuery选项卡插件

10值得检查jQuery插件10值得检查jQuery插件Mar 01, 2025 am 01:29 AM

发现十个杰出的jQuery插件,以提升您的网站的活力和视觉吸引力!这个精选的收藏品提供了不同的功能,从图像动画到交互式画廊。让我们探索这些强大的工具: 相关文章: 1

HTTP与节点和HTTP-Console调试HTTP与节点和HTTP-Console调试Mar 01, 2025 am 01:37 AM

HTTP-Console是一个节点模块,可为您提供用于执行HTTP命令的命令行接口。不管您是否针对Web服务器,Web Serv

自定义Google搜索API设置教程自定义Google搜索API设置教程Mar 04, 2025 am 01:06 AM

本教程向您展示了如何将自定义的Google搜索API集成到您的博客或网站中,提供了比标准WordPress主题搜索功能更精致的搜索体验。 令人惊讶的是简单!您将能够将搜索限制为Y

jQuery添加卷轴到DivjQuery添加卷轴到DivMar 01, 2025 am 01:30 AM

当div内容超出容器元素区域时,以下jQuery代码片段可用于添加滚动条。 (无演示,请直接复制到Firebug中) //D = document //W = window //$ = jQuery var contentArea = $(this), wintop = contentArea.scrollTop(), docheight = $(D).height(), winheight = $(W).height(), divheight = $('#c

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前By尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。