云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

域名解析_徐州市城乡建设局网站_12月免费

小七 141 0

腾讯云服务器_如何选_云服务器怎么使用

Github回购管理媒体文件(处理、存储和操作)是我们作为实际开发人员遇到的最大挑战之一。这些挑战包括:媒体上传资源管理(导致成本高昂)媒体存储媒体操纵送货不畅管理一个名为Cloudinary的优秀服务可以帮助我们克服许多这些挑战。与Cloudinary一起,让我们为这些挑战寻找解决方案,并希望有一个更简单的媒体思维模式管理层构建这个解决方案的过程是一个实际的例子,它将使我们的手脏,但却是一个实际的方法。Instagram和Flickr都以大量的图像处理著称,因此我们可以从这些应用程序中汲取灵感,构建类似的应用程序。网络研讨会我们要建造什么上图显示了我们将要建造的建筑。我们将使用节点.js,Express(用于路由)和EJS(用于模板),最大的问题是,在构建这个应用程序时,我们打算如何解决前面列出的问题?去见Cloudinarymet Cloudinary,如果你没有的话!"Cloudinary是面向web和移动开发人员的媒体后端。端到端解决方案,满足您所有图像和视频需求。"Cloudinary是一个强大的工具,不仅可以管理图像,还可以管理视频。这个工具的有趣之处在于它抽象了我们在管理图像和其他媒体文件时遇到的许多(实际上是所有)挑战,包括我们列出的那些上面。我们我们不仅要讨论Cloudinary如何帮助我们解决这些难题,我们将使用Cloudinary构建上述应用程序,该应用程序将向这些应用程序公开所有解决方案拼图。云端使我们有能力:使用可定制的小部件有效地处理图像上传使用移动图像优化移动图像执行管理操作,包括:重命名、删除等存储和备份图像/视频操作媒体文件传送媒体文件项目设置、目录结构和依赖性首先要做的是。让我们为我们的应用程序设置一个项目环境。本教程开头和结尾提供的GitHub URL是多分支的。每个分支都以step-{step number}作为前缀,其中"step number"是每个分支的增量步骤。那个第一步是step-0-project-structure,这样您就可以切换到那个分支并从那个分支开始执行。主分支包含final解决方案有一个项目的概述,它总是一个好主意,提出一个目录结构,然后我们可以建立日期:抄送至剪贴板|---应用程序|------控制器.js//路由处理程序|------模型.js//猫鼬模型|---public//公共内容(style,用云服务器,js,imgs)|---视图//EJS视图|-----管理员|-------索引.ejs//管理员主页|-----页数|-------索引.ejs//主页|-------新.ejs//新建文章页|-------编辑.ejs//编辑文章页|-------单个.ejs//预览文章页|-----部分|-------页眉.ejs//标题部分|-------ejs负责人//部分样式|-------脚本.ejs//脚本部分|---包.json|---路线.js//路由文件|---服务器.js//进入这样我们就可以专注于讨论我们正在实现的特性,而不是花时间移动代码周围。更新包.json与第三方库的依赖关系使用:复制到剪贴板"依赖关系":{"正文分析器":"^1.15.2","cloudinary":"^1.4.2","连接多方":"^2.0.0","ejs":"^2.5.2","express":"^4.14.0","猫鼬":"^4.6.0"}可以通过以下方式安装依赖项:运行:复制到剪贴板npm安装在本教程中,我们将重点放在后端,但这并不意味着我们不能为前端提供一个好看的设计。我们可以通过更新来使用语义UI,而不是浪费时间来构建它ejs负责人以及脚本.ejs:复制到剪贴板复制到剪贴板使用sdksapi访问通过免费注册创建帐户后,您将被重定向到Cloudinary仪表板。这就是仪表板的样子比如:仪表板显示了一个sdk列表,您可以使用这些sdk以大多数流行语言与Cloudinary对话,包括Node.js.Cloudinary节点core根据您的云名称公开api,这些sdk所做的就是充当这些URL的语言包装器。因此,与其在应用程序中乱丢这些url,不如使用一种更直观的基于语言的方法api来工作和…在一起cloud name不是您的名字,而是您注册为cloud时选择的名称名称:安装节点.jsCloudinary SDKWe对节点.js所以让我们把它安装在我们现有的项目:复制到剪贴板npm install cloudinary—保存处理图像上传将图像发送到服务器/云端是管理项目中图像的第一个也是最重要的阶段。在本节中,我们将介绍如何在浏览器/手机中从网络上传文件使用Cloudinary的upload小部件上传变换图像显示图像还有更多。。。自定义图片上传让我们看看如何使用我们安装的SDK将图片上传到云端。图像上传总是需要某种形式的输入来获取图像数据,所以让我们创建一个页面那:抄送剪贴板在在这种形式不仅仅是一种常规形式。如您所见,enctype属性被设置为multipart/form data,以便正确地支持和处理通过形式。你可以看到我们是如何将模板部分注入到HTML文档中的。我们已经看到了head和scripts部分,所以剩下的是header部分。部分只占导航栏:复制到剪贴板我们已经设置好了标记,免费网站自助建站,但是还不能为标记提供服务,因为有路由处理。让我们创建一个route和controller操作方法来执行此操作:复制到剪贴板// ./路线.jsvar controller=require('./app/controller');模块.导出=功能(app){应用程序获取('/新',大数据需要学什么,控制器.新);};我们指向一个不存在的控制器和操作方法。这个action方法包含呈现ejs的逻辑,因此我们可以创建它现在:复制到剪贴板///应用程序/控制器.js模块.导出= {新:功能(req、res){还原渲染('页面/新');}};这样,我们就可以运行应用程序并在/新:当然我们的客户不能只盯着他们看。他们会想把它填好,然后点击Post按钮。当点击时会发生什么?提交时,啥是大数据,表单数据被收集并发送到/create端点,此时我们还没有创建路由,所以让我们开始做一些那:抄送剪贴板// ./路线.jsvar multipart=require('connect-multiparty');var multipartMiddleware=multipart();var controller=require('./app/controller');模块.导出=功能(app){应用程序获取('/新',控制器.新);//使用中间件处理上传的文件和访问//上载的文件使用需求文件应用程序发布('/create',多部分中间件,控制器.创建);};我们不仅添加了一个新的路由,还配置了一个中间件来帮助我们处理和获取上载文件的详细信息。使用multipartMiddleware,我们可以从需求文件.So我们有一个路由,淘大客,但是路由点需要逻辑来处理传入的请求。控制器的create action方法就是这个逻辑live:复制到剪贴板///应用程序/控制器.js//依赖关系var cloudinary=require('cloudinary');//猫鼬模型var Model=require('./Model');//配置云数据库//上的凭据可用//您的Cloudinary帐户仪表板cloudinary.config文件({cloud_name:'云端名称',api_key:'api_密钥',api_secret:'秘密'});模块.导出= {新:功能(req、res){还原渲染('页面/新');},创建:功能(req、res){//使用Cloudinary上传器上传到Cloudinary服务器//使用访问从浏览器上载的文件需求文件云数据库.uploader.upload(req.files.image文件.path,函数(结果){//创建柱模型//将所有数据集合为对象//并传递给模型实例var post=新模型({标题:要求正文标题,说明:需求主体描述,创建时间:new Date(),//将URL存储在数据库中以备将来使用图片: