小编shu*_*l92的帖子

AWS Lambda不与gm模块一起使用

当图像放入s3存储桶时,我正在使用AWS Lambdas3存储桶中的图像调整为使用节点js的不同大小的变体.

它一直工作到昨天.今天当我使用相同的lambda函数时,我收到以下错误:

{
"errorMessage": "Command failed: identify: not authorized `//bucketname.s3.amazonaws.com/imagename.jpg' @ error/constitute.c/ReadImage/454.\n",
"errorType": "Error",
"stackTrace": [
    "",
    "ChildProcess.proc.on.onExit (/var/task/node_modules/gm/lib/command.js:297:17)",
    "emitTwo (events.js:87:13)",
    "ChildProcess.emit (events.js:172:7)",
    "maybeClose (internal/child_process.js:821:16)",
    "Socket.<anonymous> (internal/child_process.js:319:11)",
    "emitOne (events.js:77:13)",
    "Socket.emit (events.js:169:7)",
    "Pipe._onclose (net.js:469:12)"
    ]
}
Run Code Online (Sandbox Code Playgroud)

我无法理解为什么会出现这种现象.我下面的lambda函数的所有给定函数都在异步瀑布中,首先计算宽高比,然后将图像转换为不同的大小变体.

var request=require("request");

function getTheAspectRatio(callback) {
    gm(s3Url) // I am constructing the image url in the AWS Lambda Function.
        .size(function(err, size) {
            if (!err) {
                //Calculate the Aspect ratio
            } else if (err) {
                //Give Back …
Run Code Online (Sandbox Code Playgroud)

imagemagick amazon-s3 amazon-web-services aws-lambda gm

9
推荐指数
1
解决办法
3575
查看次数

elixir中的String.split()将空字符串放在输出中的子字符串列表的末尾

我是Elixir的新手.我正在尝试分割字符串的基本操作,如下所示

String.split("Awesome","");
Run Code Online (Sandbox Code Playgroud)

根据elixir文档,它应该根据提供的模式拆分字符串.在output我得到的是如下

["A", "w", "e", "s", "o", "m", "e", ""]
Run Code Online (Sandbox Code Playgroud)

我期待output如下

["A", "w", "e", "s", "o", "m", "e"]
Run Code Online (Sandbox Code Playgroud)

ElixirElang版本如下

Erlang/OTP 20 [erts-9.0] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]
Elixir 1.5.1
Run Code Online (Sandbox Code Playgroud)

我无法理解为什么在输出中empty string添加了end一个list of substrings.有人能让我知道为什么我得到上述输出并帮助预期输出?

split elixir

6
推荐指数
1
解决办法
3137
查看次数

mongodb 中哪个消耗更多内存布尔值或整数?

嗨,我有一个应用程序,我们以整数形式发送警报状态,可以是 1 或 0。我正在使用 Mongodb 来存储警报状态。Mongodb 使用一种称为 integer 的类型,它可以存储 32 位或 64 位整数值。它还有一个称为布尔值的数据类型,它存储一个 True 或 False 值。我有 2,00,000 条记录,带有 2,00,000 个不同设备的警报状态。我的问题是 mongo 如何在其中存储布尔值(基本上是内部机制)?还有在 mongodb 数据库中消耗较少的内存(布尔值或整数)?

mongodb

5
推荐指数
2
解决办法
1323
查看次数

无法理解为什么尝试和捕获无法在猫鼬中按预期方式工作

我是mongoose的新手,我在项目中使用Sails jsMongo DBMongoose。我的基本要求是从我的user 收藏中查找所有用户的详细信息。我的代码如下:

try{
    user.find().exec(function(err,userData){
    if(err){
         //Capture the error in JSON format
    }else{
         // Return users in JSON format
     }
    });
   }
catch(err){
      // Error Handling
 }
Run Code Online (Sandbox Code Playgroud)

user是一个包含所有细节的模型user。我扬帆起航,解除了我的应用程序,然后关闭了MongoDB连接。我继续API进行DHC,发现以下内容:

  1. 当我跑API第一时间DHC,在API花了超过30秒,告诉我一个错误MongoDB 连接是暂无数据。
  2. 当我跑API第二个时,API不会给响应超时。

我的问题在这里,为什么 try and catch块无法有效地处理这样的错误 异常mongoose …

try-catch mongoose mongodb node.js sails.js

5
推荐指数
1
解决办法
2540
查看次数

错误:没有为node-googlemaps定义GoogleMapsAPI

我正在使用node-googlemaps来查询Google Maps API来自Node js.我已经创建了我的Server API密钥作为开发人员.根据文档,我必须publicConfig使用我的API密钥和某些其他参数创建变量.我的publicConfig变量如下:

 var gm = require('googlemaps');
 var publicConfig = {
  key: 'myKey',
  stagger_time:1000, // for elevationPath
  encode_polylines:false,
  secure:true // use https
};
 var gmAPI = new GoogleMapsAPI(publicConfig);
Run Code Online (Sandbox Code Playgroud)

当我运行代码时,我收到以下错误

 ReferenceError: GoogleMapsAPI is not defined
Run Code Online (Sandbox Code Playgroud)

有人可以帮我解决这个问题吗?

google-api google-maps-api-3 node.js npm sails.js

5
推荐指数
1
解决办法
1166
查看次数

mysql中的ST_Distance_Sphere无法提供两个位置之间的准确距离

我的方法requirement是使用mysql在给定的地图上计算两者distance之间的差。我在mysql中找到了一个名为ST_Distance_Sphere的函数,该函数返回球体上两个位置和/或多个位置之间的最小球面距离(以米为单位)。locations

当我使用ST_Distance_Spherelat_lng_distance函数计算两个位置之间的距离时,我发现ST_Distance_Sphere给出的距离与lat_lng_distance函数的距离不同 。

我的lat_lng_distance功能代码如下

CREATE FUNCTION `lat_lng_distance` (lat1 FLOAT, lng1 FLOAT, lat2 FLOAT, lng2 FLOAT)
RETURNS FLOAT
DETERMINISTIC
BEGIN
    RETURN 6371 * 2 * ASIN(SQRT(
        POWER(SIN((lat1 - abs(lat2)) * pi()/180 / 2),
        2) + COS(lat1 * pi()/180 ) * COS(abs(lat2) *
        pi()/180) * POWER(SIN((lng1 - lng2) *
        pi()/180 / 2), 2) ));
END
Run Code Online (Sandbox Code Playgroud)

((38.898556,-77.037852),(38.897147,-77.043934))传递给ST_Distance_Sphere和 …

mysql sql mysql-workbench

5
推荐指数
1
解决办法
4557
查看次数

global.util.crypto.lib.randomBytes不是函数错误

我是新来的反应.使用amazon-cognito-identity-js npm包时出现错误时出现以下错误,如下所示

_global.util.crypto.lib.randomBytes is not a function
Run Code Online (Sandbox Code Playgroud)

我的Actions文件反应如下

    import axios from 'axios';
    import * as actionTypes from './actionTypes';
    import authenticateUser from '../services/cognitoAuthenticateUser';
    import {reset} from 'redux-form';


    const signInUserSuccess = ({...result,email, newPasswordRequired = false}) => {
      return {
        type: actionTypes.SIGNIN_SUCCESS,
        ...result,
        email
      }
    };

    const signInUserFailure = (error) => {
      return {
        type: actionTypes.SIGNIN_FAILURE,
        error
      }
    };


    /* Login a given user based on his credentials added */
    export function LoginFeature(email,password,callback){

      return (dispatch) => {
        authenticateUser(email, password)
         .then(result …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services node.js npm reactjs

5
推荐指数
1
解决办法
439
查看次数

无法理解 bcrypt npm 包中的 bcrypt.genSalt

嗨,我最近在我的项目中使用了 bcrypt npm 包的 bcrypt.genSalt。使用 bcrypt.genSalt 的基本思想是为需要加密的密码生成 Salt。使用 bcrypt.genSalt 的语法如下

bcrypt.genSalt(回合,CB)

rounds - [可选] - 处理数据的成本。(默认 - 10)

cb - [REQUIRED] - 生成盐后要触发的回调。使用 eio 使其异步。 err - 详细说明任何错误的回调的第一个参数。 salt - 回调的第二个参数,提供生成的盐。

出于好奇,我改变了几轮参数从101024bcrypt.genSalt(轮,CB) ,并发现我的API无法执行bcrypt.genSalt(轮,CB)。我不得不放弃在DHC我的岗位操作.

有人可以解释轮次bcrypt.genSalt(rounds, cb) 中的重要性吗?另外,如果我将轮数操纵到 10 或大于 10 的较小值,会发生什么?

node.js npm

4
推荐指数
1
解决办法
5015
查看次数

Sails错误:抛出新错误('不能在发送后设置标题.')

嗨,我是Sails的新手,我正在尝试通过禁用水线功能使用Sails连接到Mongoose.在执行POST操作的Sails中执行我的代码时,遇到以下问题

/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/node_modules/mongoose/node_modules/mpromise/lib/promise.js:108
 if (this.ended && !this.hasRejectListeners()) throw reason;
                                                  ^
Error: Can't set headers after they are sent.
at ServerResponse.OutgoingMessage.setHeader (_http_outgoing.js:335:11)
at ServerResponse.res.setHeader (/usr/local/lib/node_modules/sails/node_modules/express/node_modules/connect/lib/patch.js:133:22)
at ServerResponse.res.set.res.header (/usr/local/lib/node_modules/sails/node_modules/express/lib/response.js:577:10)
at ServerResponse.res.send (/usr/local/lib/node_modules/sails/node_modules/express/lib/response.js:142:12)
at ServerResponse.res.json (/usr/local/lib/node_modules/sails/node_modules/express/lib/response.js:223:15)
at EventEmitter.<anonymous> (/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/api/controllers/Status-packetController.js:74:17)
at EventEmitter.<anonymous> (/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/node_modules/mongoose/node_modules/mpromise/lib/promise.js:175:45)
at EventEmitter.emit (events.js:110:17)
at Promise.safeEmit (/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/node_modules/mongoose/node_modules/mpromise/lib/promise.js:81:21)
at Promise.fulfill (/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/node_modules/mongoose/node_modules/mpromise/lib/promise.js:94:24)
at Promise.resolve (/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/node_modules/mongoose/lib/promise.js:113:23)
at model.<anonymous> (/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/node_modules/mongoose/lib/document.js:1578:39)
at next_ (/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/node_modules/mongoose/node_modules/hooks-fixed/hooks.js:89:34)
at EventEmitter.fnWrapper (/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/node_modules/mongoose/node_modules/hooks-fixed/hooks.js:171:15)
at EventEmitter.<anonymous> (/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/node_modules/mongoose/node_modules/mpromise/lib/promise.js:175:45)
at EventEmitter.emit (events.js:110:17)
at Promise.safeEmit (/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/node_modules/mongoose/node_modules/mpromise/lib/promise.js:81:21)
at Promise.fulfill (/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/node_modules/mongoose/node_modules/mpromise/lib/promise.js:94:24)
at p1.then.then.self.isNew (/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/node_modules/mongoose/lib/model.js:254:27)
at newTickHandler (/Users/febinp/Documents/Tecsol/Taqua/Taqua-loginpacket/node_modules/mongoose/node_modules/mpromise/lib/promise.js:229:18)
at process._tickDomainCallback (node.js:381:11) …
Run Code Online (Sandbox Code Playgroud)

mongoose node.js sails.js waterline

3
推荐指数
1
解决办法
3524
查看次数

无法将AWS S3与AWS Lambda链接

我想将AWS S3AWS Lambda连接.我创建了我的s3桶并将其命名xyz.在我的AWS Lambda函数上创建事件源时,它显示以下错误

There was an error creating the event source mapping: Your bucket must be in the same region as the function.
Run Code Online (Sandbox Code Playgroud)

在浏览此链接时,我发现我需要为AWS Lambda函数设置s3存储桶的事件通知.但是我无法为s3存储桶设置事件通知,因为它没有在s3存储桶属性的事件选项卡中显示AWS lambda函数的设置.

我为Lambda创建的IAM角色的策略文档如下

{
"Version": "VersionNumber",
"Statement": [
    {
        "Effect": "Allow",
        "Action": [
            "logs:CreateLogGroup",
            "logs:CreateLogStream",
            "logs:PutLogEvents"
        ],
        "Resource": "arn:aws:logs:*:*:*"
    },
    {
        "Effect": "Allow",
        "Action": [
            "s3:GetObject",
            "s3:PutObject"
        ],
        "Resource": [
            "arn:aws:s3:::xyz/*"
        ]
    }
   ]
 }
Run Code Online (Sandbox Code Playgroud)

有人可以告诉我为什么我无法为s3存储桶上的操作创建AWS Lambda事件吗?

amazon-s3 amazon-web-services aws-lambda

3
推荐指数
1
解决办法
4491
查看次数

使用节点oracle-db npm packagae时出现ORA-12514错误

目前,我正在一个项目中,要求后端在中完成oracle。我使用给定的链接,并在Mac上使用npm 安装了node-oracledb。我的文件内容如下

var oracledb = require('oracledb');

oracledb.getConnection(
{
user          : 'username',
password      : 'password',
connectString : 'username/password//hostname:port/sid'
function(err, connection)
{
if (err) {
  console.error(err.message);
  return;
}else{
    connection.execute(
  "SELECT * from TableName",
  function(err, result)
  {
    if (err) { console.error(err); return; }
    console.log(result.rows);
  });
 }
});
Run Code Online (Sandbox Code Playgroud)

当我运行节点filename.js时,出现以下错误

ORA-12154: TNS:could not resolve the connect identifier specified
Run Code Online (Sandbox Code Playgroud)

我正在使用的节点版本是,v7.0.0而npm版本是v3.10.8。我的oracle数据库也是11g云上的一个实例。有人可以让我知道我在做什么错吗?

javascript oracle oracle11g node.js npm

2
推荐指数
1
解决办法
1255
查看次数

elixir 中 inet parse_address 命令的语法错误

我是Elixir 的新手。我的任务是检查给定的文件string是否为ip address or a number. 我发现inet有这个parse_address检查给定的字符串是否是一个 IP 地址并提供适当的响应。

我在iex终端上的代码如下

inet :parse_address("192.168.42.2")
Run Code Online (Sandbox Code Playgroud)

当我在终端上运行上述代码时,出现以下错误

 iex(1)> inet :parse_address("192.168.42.2").
 ** (SyntaxError) iex:1: syntax error before: '('
Run Code Online (Sandbox Code Playgroud)

有人可以帮我解决这个问题吗?

erlang elixir erlang-shell

2
推荐指数
1
解决办法
571
查看次数