Tag: 亚马逊

在承诺fs.writeFile,asynchronous同步的东西

我需要一些帮助我的代码。 我是nodejs的新手,遇到很多麻烦。 我在做什么: 1)使用Amazon产品(ASIN's)获取.txt文件 2)使用amazon-product-api软件包获取所有产品 3)将每个产品保存在.json文件中 我的代码不工作。 我想我搞砸了这个asynchronous同步的东西 – 帮助我! var amazon = require('amazon-product-api'); var fs = require('fs'); var client = amazon.createClient({ awsId: "XXX", awsSecret: "XXX", awsTag: "888" }); var array = fs.readFileSync('./test.txt').toString().split('\n'); for (var i = 1; i < array.length; i++) { var ASIN = array[i]; return client.itemLookup({ domain: 'webservices.amazon.de', responseGroup: 'Large', idType: 'ASIN', […]

为亚马逊fps生成一个签名

我正在努力将亚马逊FPS整合到我公司的网站,但似乎有问题产生一个正确的签名。 以下是亚马逊的文档说明: http : //docs.amazonwebservices.com/AmazonFPS/latest/FPSAdvancedGuide/APPNDX_GeneratingaSignature.html 这是我的string,我哈希: GET\nfps.sandbox.amazonaws.com\n/\nAction=Reserve&AWSAccessKeyId=REMOVED&CallerDescription=Reserve&CallerReference=CallerReference05&RecipientTokenId=254656Example83987&SenderTokenId=553IPMACGAZ2J4N1L7BJ3UMNRFTQU4V9NT4RJCTVADDJKXQ6L1ZAKSIUNPIRTTI1&SignatureMethod=HmacSHA256&SignatureVersion=2&Timestamp=2012-09-12T22%3A29%3A07.623Z&TransactionAmount.CurrencyCode=USD&TransactionAmount.Value=1.00&Version=2010-08-28 这里是我发送的HTTP请求: https://fps.sandbox.amazonaws.com?Action=Reserve&AWSAccessKeyId=REMOVED&CallerDescription=Reserve&CallerReference=CallerReference05&RecipientTokenId=254656Example83987&SenderTokenId=553IPMACGAZ2J4N1L7BJ3UMNRFTQU4V9NT4RJCTVADDJKXQ6L1ZAKSIUNPIRTTI1&Signature=t5r%2BWmV9PdoOGfHhtwLJ5nJ8zo%2BIJL4uWB6MOMpkZLw%3D&SignatureMethod=HmacSHA256&SignatureVersion=2&Timestamp=2012-09-12T22%3A29%3A07.623Z&TransactionAmount.CurrencyCode=USD&TransactionAmount.Value=1.00&Version=2010-08-28 这里也是我收到的确切的错误: SignatureDoesNotMatch The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details. RequestID – ac476abb-2bc6-4891-8854-e52cf33f8716 我用一个node.js后端在coffeescript中写这个。 任何人都可以find我做错了什么? 如果需要,我可以发布我的代码。

ELB上的套接字io需要连接到应用程序服务器的所有实例

我有一个套接字服务器应用程序写在节点js上,托pipe在Amazon EBS(Elastic bean stalk)上,由负载平衡器 客户端连接到套接字并传递指定的ID,说event_id我的应用程序创build名称为“event_ event_id ”的房间,并join房间。 不同的客户有不同的“event_id” 一个lambda函数连接到套接字,并向应用程序发出一个名为“event_push”的事件,其中包含必要的数据,如event_id 每当我的套接字应用程序(在EBS中的一个实例中)检测到带有event_id的推送事件时,它就将推送的event_id广播给房间的所有成员“event_ event_id ”,从而所有成员得到事件的通知 客户端可以连接任何由负载均衡器决定的服务器,而粘性会话可以保持连接 现在我的问题:有没有办法发出“event_push”只有服务器有一个房间名为“event_ event_id ” Qn:有没有办法将事件发送到EBS中的所有服务器实例? 或Qn:有没有其他解决scheme?

npm全局安装在弹性豆茎上

我正在遇到一个安装PM2的问题,在aws elastic beanstalk上全局安装。 我创build了以下用于安装pm2的脚本: option_settings: – option_name: NODE_ENV value: production container_commands: 01_enable_rootaccess: command: echo Defaults:root \!requiretty >> /etc/sudoers 02_install_imagemagic: command: yum install -y ImageMagick 03_download_new_relic: command: rpm -Uvh http://download.newrelic.com/pub/newrelic/el5/i386/newrelic-repo-5-3.noarch.rpm ignoreErrors: true 04_install_new_relic: command: yum install -y newrelic-sysmond ignoreErrors: true 05_add_license_key: command: /usr/sbin/nrsysmond-config –set license_key=xxxxxxx ignoreErrors: true 06_start_new_relic: command: /etc/init.d/newrelic-sysmond start ignoreErrors: true 07_install_pm2: command: sudo […]

amazon s3 deleteObjects nodejs – 无法让它工作

我正在使用nodejs并试图一次删除多个对象。 但由于某种原因,尽pipe没有返回任何错误,操作不能按预期工作(文件不被删除)。 这里是代码: s3.deleteObjects({ Bucket: 'myprivatebucket/some/subfolders', Delete: { Objects: [ { Key: 'nameofthefile1.extension' }, { Key: 'nameofthefile2.extension' }, { Key: 'nameofthefile3.extension' } ] } }, function(err, data) { if (err) return console.log(err); console.log('success'); }); 如果我尝试遍历这些文件,并使用s3.deleteObject方法,那么它工作得很好。 我也试图指定没有其子文件夹(如“myprivatebucket”),但我没有得到任何结果。 任何想法如何使这个事情工作? 我使用节点版本:0.10.32和aws应该是2.0.17。

从ASIN获取亚马逊物品图片和描述

我正在做一个购物清单的networking应用程序,您可以在其中链接项目到他们的亚马逊的等价物。 但我想知道如何去做。 有没有API? 如果是这样,是否有一个JavaScript API? 我想: a)使用ASIN获取物品图像和描述 b)获取search结果一定的期限。 任何build议/帮助,欢迎! 谢谢!

DynamoDB putitem在NodeJs中 – 对象数组

我正在尝试从AWS Lambda设置一个小的API到DynamoDB,我很难弄清楚是否以及如何将一个对象数组写入到一个键中。 我有一个像 { "teamName": "Team Awesome", "members": [ { "email": "person-1@example.com", "name": "Bob" }, { "email": "person-2@example.com", "name": "Alice" } ] } 成员数组给我提供了一些问题,在文档中看起来可以考虑使用列表types,但是没有例子说明如何去做,而我正在用尽方法去尝试它。 那么是否有可能用这种格式写一些东西呢?在这种情况下你怎么做呢? 示例代码 – 我该怎么摆? var AWS = require('aws-sdk'); var dynamodb = new AWS.DynamoDB(); exports.handler = function(event, context) { var tableName = "GDCCompetition"; var datetime = new Date().getTime().toString(); DynamoDB.putItem({ "TableName": tableName, "Item": […]

如何启用Node.js应用程序连续部署到Amazon EC2?

我是一个node.js开发人员。 我之前使用过Heroku和Joyent的no.de平台。 对于这两个平台,部署过去很简单 git push heroku master ( Heroku ) git push joyent master ( Joyent's node) 上面的命令用来做魔术。 他们使我能够将代码从本地机器推送到云服务器,部署它并自动重启服务器。 现在我正计划使用Amazon AWS作为其更加可configuration的function以满足我的需求。 如何在Amazon EC2上设置类似的连续部署? 我正在使用Ubuntu AMI。 有没有什么工具可以帮助我实现这个目标? 如果有任何资源/教程可以帮助我 – 请让我知道。 谢谢 !

AWS Cors问题 – Node.js

使用CORS标头请求存储在AWS S3(简单存储)上的图像时,我目前遇到问题。 我已经在AWS控制台上设置了CORSconfiguration – 设置如下: <?xml version="1.0" encoding="UTF-8"?> <CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <CORSRule> <AllowedOrigin>*</AllowedOrigin> <AllowedMethod>GET</AllowedMethod> <MaxAgeSeconds>3000</MaxAgeSeconds> <AllowedHeader>Authorization</AllowedHeader> </CORSRule> </CORSConfiguration> 然而,当我请求这些存储的图像的时候,我得到的回应是一点点的,而且是相当间歇的。 有时图像是返回与头requred有时不是。 我真的不知道为什么会发生这种情况。 当我尝试使用一个页面上的Access-Control-Allow-Origin头部设置为*的方式尝试创build一个以上的图像请求时,效果会恶化(例如,如果我需要10个图像来检索所有带有交叉原始头文件)。 这些是我需要的标题: Access-Control-Allow-Methods:GET Access-Control-Allow-Origin:* Access-Control-Max-Age:3000 我真的不确定我做错了什么。 我已经确保每个图片标签都添加了crossOrigin =“anonymous”属性,但同样没有运气。 我需要这些图像交叉原点的原因是因为我已经安装了一个angular度插件,允许用户裁剪图像,并将裁剪版本的图像存储为base64string。 不过,在尝试检索它们时,出现以下错误。 这些是正确返回的图像的标题: Request URL:https://trajansmarket.s3.amazonaws.com/be5bbda0-b04a-11e5-81d3-dd7ff3efeebc.jpg Request Method:GET Status Code:304 Not Modified Remote Address:54.231.252.131:443 Response Headers view source Access-Control-Allow-Methods:GET Access-Control-Allow-Origin:* Access-Control-Max-Age:3000 Cache-Control:public, max-age=31536000 Date:Tue, 12 Jan 2016 21:13:03 […]

在Amazon的ELB后面带有node-js的远程IP地址

在弹性负载平衡器(elb)后面的实例存储亚马逊机器上有一个节点应用程序。 但是,远程IP地址似乎总是相同的。 我用这个代码来获取客户端的IP地址(通过connect / express): req.socket.remoteAddress 我没有从节点文档中得到任何其他信息。 任何提示?