Articles of amazon web services

节点expressionaws s3.listBuckets在页面呈现后执行callback

列表带有callback的桶: router.get('/', function(request,response) { s3.listBuckets(function(error, data) { if (error) { console.log(error); } else { console.log(data.Buckets[0].Name);//since i have only one bucket bucket = data.Buckets[0].name; } }); response.render('index', { mybucket:bucket }); console.log("rendered page"); }); 输出: rendered page //rendered page with mybucket:'' empty GET /getbucket 200 7.827 ms – 787 lvresults //bucketname displayed after rendering in console bucketname只能在页面呈现后访问

无法导入模块“索引”:在使用claudia.js时,aws云中的错误监视日志

无法导入模块“索引”:aws云监视日志中的错误。 上传lambda使用克劳迪娅工作正常,但API不起作用,云观看日志显示以下错误: Unable to import module 'index': Error at Function.Module._resolveFilename (module.js:469:15) at Function.Module._load (module.js:417:25) at Module.require (module.js:497:17) at require (internal/module.js:20:19) at Object.<anonymous> (/var/task/node_modules/request/request.js:12:21) at Module._compile (module.js:570:32) at Object.Module._extensions..js (module.js:579:10) at Module.load (module.js:487:32) at tryModuleLoad (module.js:446:12) at Function.Module._load (module.js:438:3)

在与现有NodeJS应用程序相同的AWS EC2实例上安装MongoDB?

我有点新来托pipe像MongoDB这样的数据库,并试图使用最具成本效益,但可靠的方法。 将MongoDB数据库安装在与Node应用程序相同的EC2实例上是否明智? 如果是的话,怎么样? 另外,有什么select?

MalformedXML:您提供的XML格式不正确,或者没有针对我们发布的模式进行validation

在使用AWS S3时,我遇到了这个奇怪的问题。 我正在处理可以将图像存储到AWS存储桶的应用程序。 使用Multer作为中间件和S3FS库来连接并上传到AWS。 但是当我尝试上传内容时popup下面的错误。 “MalformedXML:你提供的XML格式不正确,或者没有对我们的publis hed schema进行validation” Index.js var express = require('express'); var router = express(); var multer = require('multer'); var fs = require('fs'); var S3FS = require('s3fs'); var upload = multer({ dest: 'uploads' }) var S3fsImpl = new S3FS('bucket-name', { region: 'us-east-1', accessKeyId: 'XXXXXXXXXXXX', secretAccessKey: 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' }); /* GET home page. */ router.get('/', […]

为正在上传到AWS S3的图像设置过期和caching控制标头

我正在使用名为node-s3-client的npm包,它是aws-sdk for Node.js的高级包装,将本地项目目录上传到S3存储桶。 使用该包,我将一些元数据传递给我的文件,即Expires和Cache-Control键值对。 我正在上传整个由HTML,JS,CSS,JPEG文件组成的目录。 但是,当我检查我的S3存储桶时,我设置的标题只适用于JS和CSS文件,这些标题不适用于图像。 我已经通过包和aws-sdk的文档,但我似乎无法find是什么原因导致有select地将我的元数据应用于某些文件而不适用于其他文件的问题。 这是我的configuration对象: const s3 = require('node-s3-client') const s3Config= { localDir: './dist', deleteRemoved: false, s3Params: { Bucket: 'cdn', Prefix: 'dist/', Metadata: { 'Cache-Control': 'max-age=31536000', 'Expires': oneYearLater(new Date()) } } } const client = s3.createClient({ s3Options: { accessKeyId: KEY_ID, secretAccessKey: ACCESS_KEY, signatureVersion: 'v4', region: 'us-east-2', s3DisableBodySigning: true } }) client.uploadDir(s3Config) 什么可能导致这个问题?

Lambda函数testing永远不会通过

我试图让我的第一个Lambda函数工作,但我不能得到一个testing写入我的dynamoDB。 到目前为止,我一直在关注AWS教程。 这是我的Lambda函数(从教程略微修改,以适应我的数据库): 'use strict'; console.log('Loading function'); const doc = require('dynamodb-doc'); const dynamo = new doc.DynamoDB(); /** * Provide an event that contains the following keys: * * – operation: one of the operations in the switch statement below * – tableName: required for operations that interact with DynamoDB * – payload: a parameter to […]

AWS IOT节点sdk为listThings和createThing提供了ResourceNotFoundException

我试图获得注册的东西的细节,并创造新的东西。 我为他们获得了ResourceNotFoundException。 var AWS = require('aws-sdk'); var iot = new AWS.Iot({ endpoint: "https://XXXXXXXXXX.iot.us-east-1.amazonaws.com", region: "us-east-1", accessKeyId: "XXXXXXXXXX", secretAccessKey: "XXXXXXXXXX" }); var params = { thingName: 'D02', attributePayload: { attributes: { 'Org': 'Org2' }, merge: false }, thingTypeName: 'thing1' }; iot.createThing(params, function(err, data) { if (err) console.log(err, err.stack); // an error occurred else console.log(data); // successful […]

将SQL SERVER(RDS)事务实时stream式传输到NoSQL

我有一种情况,希望将所有更新,删除和插入从我的AWS RDS SQL Server传输到NoSQL DB(如DynamoDB或RethinkDB)。 我试图实现的是将我的用户分为关键数据库和非关键数据库,从而减less我的rds服务器的负载,并使用rethinkdb或dynamodbstream等技术将另一组数据(非关键)发送到前端。 我曾想过各种方法来做到这一点: 最明显的是在两个数据库中只是asynchronous进入,尽pipe我最终可能会遇到其中一个条目可能失败的情况。 二是使用RabbitMQ或排队服务aws sqs que第二项,并确保它插入。 (我想实现)是否如果以某种方式nodejs服务可以侦听mssqlstream并将内容推送到nosql。 在这样的情况下可以做些什么? 我正在寻找的利润是将数据集存储在nosql中,可以向超过10万用户提供服务,因为他们都希望仅通过一些where子句更改和实时查看相同的数据。 这反过来会将RDS服务器事务减less到最小读写次数。

AWS Lambdafunction在部署后不起作用

当我在本地部署我的服务器lessfunction它工作得很好,但是当它部署到aws lambda时,我已经包括了networking包也没有错误离线运行 Syntax error in module 'handler': SyntaxError (function (exports, require, module, __filename, __dirname) { import mongoose from 'mongoose'; ^^^^^^

构buildAlexa技能时,在lambda函数中使用NodeJS请求时,http响应或超时错误

我正在build立一个新的技能,我的lambda函数需要调用另一个API来获取一些歌曲的信息。 我的lambda函数被附加。 我的问题是,我可以通过Web浏览器打开url,并得到正确的响应,但是当我在AWS Lambda网站上testingPlay intent时,有时候我得到了超时,有时候我得到了200个代码,但是这样的代码不完整:{“r” :0,“is_show_quick_start”:0,“song”:[]},其中“song”应该有上下文。 (你可以看到它,如果你通过任何网页浏览器打开url) 此外,我testing了另一个url,也可以通过networking浏览器打开,但在AWS Lambda网站上testing时总是500。 我很新的NodeJS和build设Alexa技能。 任何人都可以请帮我弄清楚? 谢谢! 'use strict'; var Alexa = require('alexa-sdk'); var request = require('request'); var constants = require('./constants'); exports.handler = function(event, context, callback){ var alexa = Alexa.handler(event, context, callback); alexa.registerHandlers(stateHandlers.startModeIntentHandlers); alexa.execute(); }; var stateHandlers = { startModeIntentHandlers : Alexa.CreateStateHandler(constants.states.START_MODE, { "LaunchRequest": function () { this.emit(':ask', 'Welcome to […]