2017-02-10 8 views
0

誰かがどのようにしてvogelsの作業についての情報を共有できましたかdynalite?ここでdynaliteを持つVogelsで、要求されたリソースが見つかりません

は、私は自分のコンピュータ上でローカルに私の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: '[email protected]', 
}, 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 

任意のヒントを大幅に理解されるであろう:)

答えて

1

問題が固定されています。

問題は、私のVOGELSモデルのキーは(別名stringUUIDだったのに対し、私は数として定義されたキーと(aws-sdk-js dynamodb.createTable機能を使用して)表を作成したことのようです。

vogelsでテーブルに項目を追加しようとしたときに動作しませんでした:コマンドaws dynamodb list-tables --endpoint-url http://localhost:4567のために混乱していました。正しい表のリストがあります。

そこで、vogels vogels.createTablesというテーブルを作成しようとしました。その後、myVogelsModel.create関数の呼び出しは正常に機能しました。

FI:The topic on github

関連する問題