0

git リポジトリhttps://github.com/thejh/node-curve25519のクローンを作成し、次にnpm linkその中で使用しました。このライブラリを推奨される方法で使用しています: var curve = require('curve25519');. curve.makeSecretKey()しかし、このフラグメントの行でこのエラーが発生しています:

temp.secret = crypto.randomBytes(32);
curve.makeSecretKey(temp.secret);

これはエラー メッセージです。

/Users/username/Workspaces/nodejs/myproject/server.js:59
curve.makeSecretKey(ctx.private);
      ^
TypeError: Object #<Object> has no method 'makeSecretKey'
    at handlers.(anonymous function) (/Users/username/Workspaces/nodejs/myprojet/server.js:59:8)
    at Socket.<anonymous> (/Users/username/Workspaces/nodejs/myproject/server.js:198:3)
    at Socket.EventEmitter.emit (events.js:98:17)
    at UDP.onMessage (dgram.js:440:8)

私は何を間違っていますか?このライブラリには、そのようなメソッドが含まれている必要があります。ご覧のとおり: https://github.com/thejh/node-curve25519/blob/master/index.js

4

1 に答える 1

1

プロジェクト ディレクトリからライブラリをリンクする必要もあります。ドキュメント
の例:

cd ~/projects/node-redis    # go into the package directory
npm link                    # creates global link
cd ~/projects/node-bloggy   # go into some other package directory.
npm link redis              # link-install the package

あなたの場合、最初のパッケージ ディレクトリはcurve25519git リポジトリです。質問を正しく理解していれば、プロジェクト ディレクトリで実行する必要がある行は次のとおりです。npm link curve25519

于 2014-05-08T13:17:26.943 に答える