Javascript 在带有dynalite的Vogels上,找不到请求的资源

Javascript 在带有dynalite的Vogels上,找不到请求的资源,javascript,amazon-dynamodb,aws-sdk,vogels,dynalite,Javascript,Amazon Dynamodb,Aws Sdk,Vogels,Dynalite,有人可以分享如何工作的信息 以下是我在计算机上本地实例化DB服务器的操作: import dynalite from 'dynalite'; import packageJSON from '../package.json' // Returns a standard Node.js HTTP server const dynaliteServer = dynalite({ path: '../mydb', createTableMs: 50 }) dynaliteServer.listen

有人可以分享如何工作的信息

以下是我在计算机上本地实例化DB服务器的操作:

import dynalite from 'dynalite';
import packageJSON from '../package.json'

// Returns a standard Node.js HTTP server
const dynaliteServer = dynalite({ path: '../mydb', createTableMs: 50 })

dynaliteServer.listen(packageJSON.config.endpointPort, function (err) {
    if (err) throw err
    console.log('Dynalite started on port ' + packageJSON.config.endpointPort);
});
以下是我尝试初始化vogels的内容:

import packageJSON from '../package.json';
import AWS from 'aws-sdk';
import vogels from 'vogels';

export default function initContext() {
  const AWSConfig = {
    accessKeyId: packageJSON.config.KEY,
    secretAccessKey: packageJSON.config.SECRET,
    region: packageJSON.config.region,
    endpoint: packageJSON.config.endpoint
  };

  //config AWD
  AWS.config.update(AWSConfig);

  //create dynamodb instance
  const dynamodb = new AWS.DynamoDB(AWSConfig);

  //config vogels AWS
  vogels.AWS.config.update(AWSConfig);
  vogels.dynamoDriver(dynamodb);

  return {
    dynamodb,
    vogels
  };
}
我已经定义了一个模型,并尝试在名为
initDB.js的文件中创建它:

initContext();

myVogelsModel.create({
    name: 'foo',
    email: 'foo@example.com',
}, function (err, model) {
    console.log(err);
});
但它只返回了一个错误:

{ [ResourceNotFoundException: Requested resource not found]
  message: 'Requested resource not found',
  code: 'ResourceNotFoundException',
  time: Thu Feb 09 2017 22:53:46 GMT+0100 (Paris, Madrid),
  requestId: 'CATZQFWSMVJKOLP0YTIMU9IEVSLJBVAB7NJB8L3EIHXCDXLT30AQ',
  statusCode: 400,
  retryable: false,
  retryDelay: 0 }
C:\Users\damien\Documents\workspace\myProject\node_modules\aws-sdk\lib\request.js:31
            throw err;
            ^

TypeError: Cannot read property 'get' of undefined
    at C:/Users/damien/Documents/workspace/myProject/src/initDB.js:23:34
    at C:\Users\damien\Documents\workspace\myProject\node_modules\vogels\lib\table.js:193:16
    at Response.<anonymous> (C:\Users\damien\Documents\workspace\myProject\node_modules\vogels\lib\table.js:69:14)
    at Request.<anonymous> (C:\Users\damien\Documents\workspace\myProject\node_modules\aws-sdk\lib\request.js:355:18)
    at Request.callListeners (C:\Users\damien\Documents\workspace\myProject\node_modules\aws-sdk\lib\sequential_executor.js:105:20)
    at Request.emit (C:\Users\damien\Documents\workspace\myProject\node_modules\aws-sdk\lib\sequential_executor.js:77:10)
    at Request.emit (C:\Users\damien\Documents\workspace\myProject\node_modules\aws-sdk\lib\request.js:668:14)
    at Request.transition (C:\Users\damien\Documents\workspace\myProject\node_modules\aws-sdk\lib\request.js:22:10)
    at AcceptorStateMachine.runTo (C:\Users\damien\Documents\workspace\myProject\node_modules\aws-sdk\lib\state_machine.js:14:12)
    at C:\Users\damien\Documents\workspace\myProject\node_modules\aws-sdk\lib\state_machine.js:26:10
{[ResourceNotFoundException:未找到请求的资源]
消息:“未找到请求的资源”,
代码:“ResourceNotFoundException”,
时间:2017年2月9日星期四22:53:46 GMT+0100(巴黎,马德里),
requestId:'CATZQFWSMVJKOLP0YTIMU9IEVSLJBVAB7NJB8L3EIHXCDXLT30AQ',
状态代码:400,
可检索:错误,
retryDelay:0}
C:\Users\damien\Documents\workspace\myProject\node\u modules\aws sdk\lib\request.js:31
犯错误;
^
TypeError:无法读取未定义的属性“get”
在C:/Users/damien/Documents/workspace/myProject/src/initDB.js:23:34
在C:\Users\damien\Documents\workspace\myProject\node\u modules\vogels\lib\table.js:193:16
在回答时。(C:\Users\damien\Documents\workspace\myProject\node\u modules\vogels\lib\table.js:69:14)
应要求。(C:\Users\damien\Documents\workspace\myProject\node\u modules\aws sdk\lib\request.js:355:18)
at Request.callListeners(C:\Users\damien\Documents\workspace\myProject\node\u modules\aws sdk\lib\sequential\u executor.js:105:20)
at Request.emit(C:\Users\damien\Documents\workspace\myProject\node\u modules\aws sdk\lib\sequential\u executor.js:77:10)
at Request.emit(C:\Users\damien\Documents\workspace\myProject\node\u modules\aws sdk\lib\Request.js:668:14)
at Request.transition(C:\Users\damien\Documents\workspace\myProject\node\u modules\aws sdk\lib\Request.js:22:10)
在AcceptorStateMachine.runTo(C:\Users\damien\Documents\workspace\myProject\node\u modules\aws sdk\lib\state\u machine.js:14:12)
在C:\Users\damien\Documents\workspace\myProject\node\u modules\aws sdk\lib\state\u machine.js:26:10
任何提示都将不胜感激:)

问题已解决

问题似乎是我创建了表(使用aws sdk js dynamodb.createTable
函数),其中键定义为Number,而Vogels模型的键是
UUID
(也称为a
string

当尝试使用vogels在表中添加项时:无效:因为使用命令
aws dynamodb list tables--endpoint url,这会造成混淆http://localhost:4567
:我得到了正确的表格列表

因此,我尝试使用函数
vogels-vogels.createTables
创建表。之后,调用myVogelsModel.create函数工作得非常好

FI: