2

最近、私はhttps://github.com/baugarten/node-restfulを使用して API で作業するのに役立ちますが、問題は?

私はExpressフレームワークで作業しています.他のサイトから私のものへの「GET」リクエストを保護する方法はありますか.

Express から CSRF を使用しますが、コンソールで curl を使用して make anthing を処理すると、FORbidden 403 のメッセージが表示される POST、PUT、DELETE メソッドでのみ機能しますが、Get メソッド curl localhost:3000/posts に対してカールを作成すると、配列が返されます。すべての投稿で。

  app.use(express.csrf());
  app.use(function(req, res, next){
      res.locals.token = req.session._csrf;
      next();
  });
  app.use(app.router);

あなたは私に何をアドバイスしますか?Api をより適切に機能させるための他のモジュールはありますか? nodejsでApiを保護するにはどうすればよいですか? 学ぶべきベストプラクティスは何ですか?

あなたの助けに感謝します。

4

1 に答える 1

2

そのように設計された Express ミドルウェアを試してみてください。例えば:

var express = require('express');
var app = express();

// simple middle ware to protect your URI
app.use(function(req, res, next){
  if (req.method == 'GET') {
     if (!req.locale.token) { res.send(403); } // custom to fit your policy
     else if (req.protocol !== "https") {res.redirect("your-secure-url");}
     else { next(); }
  }
});
于 2013-09-12T00:52:40.177 に答える