0

リソースのカスタムマップを作成しようとしていますが、

app.namespace('/v1', function(){
  var sessionResource = app.resource('session', require('./routes/v1/session'));
  sessionResource.map('/test', sessionResource.index);  
});

マップは次のように壊れますが、カスタムマップがないと、nsとリソースはスムーズに機能します

/home/kuryaki/piitri/newApi/node_modules/express-resource/index.js:125
  if ('/' == path[0]) path = path.substr(1);
                 ^
    TypeError: Cannot read property '0' of undefined
        at Resource.map (/home/kuryaki/piitri/newApi/node_modules/express-resource/index.js:125:18)
        at HTTPServer.<anonymous> (/home/kuryaki/piitri/newApi/app.js:44:31)
        at HTTPServer.exports.namespace (/home/kuryaki/piitri/newApi/node_modules/express-namespace/index.js:31:6)
        at Object.<anonymous> (/home/kuryaki/piitri/newApi/app.js:42:5)
        at Module._compile (module.js:449:26)
        at Object.Module._extensions..js (module.js:467:10)
        at Module.load (module.js:356:32)
        at Function.Module._load (module.js:312:12)
        at Module.runMain (module.js:492:10)
        at process.startup.processNextTick.process._tickCallback (node.js:244:9)

インデックスメソッドが存在するので、実際にテストします

ローカルホストで/v1/sessionを取得

ノードv0.6.14、v0.8.4、v0.9.0preで試しましたが、何も機能しません。何か問題がありますか?

4

1 に答える 1

1

express-resource はまだ完全には Express 3 と互換性がありません。

ただし、package.json でこれを使用して、express-resource の特別なブランチをインストールできます。

"express-resource": 
    "git://github.com/visionmedia/express-resource.git#add/express3x-support"

またはnpm install git://github.com/visionmedia/express-resource.git#add/express3x-supportコマンドラインから。

私はしばらくの間、express-resource のブランチを楽しく使用しています。このブランチについては、express-resource の github issues ページから知りました。

于 2012-07-31T20:39:16.097 に答える