相关疑难解决方法(0)

使用Node.js HTTP Server获取并设置单个Cookie

我希望能够设置一个cookie,并在每次向nodejs服务器实例发出请求时读取该cookie.可以用几行代码完成,而不需要引入第三方库吗?

var http = require('http');

http.createServer(function (request, response) {
  response.writeHead(200, {'Content-Type': 'text/plain'});
  response.end('Hello World\n');
}).listen(8124);

console.log('Server running at http://127.0.0.1:8124/');
Run Code Online (Sandbox Code Playgroud)

只是尝试直接从nodejs.org获取上述代码,并在其中处理cookie.

javascript cookies node.js

149
推荐指数
8
解决办法
25万
查看次数

Meteor中服务器端路由的身份验证

为服务器端路由验证用户的最佳方法(最安全和最简单)是什么?

软件/版本

我正在使用最新的Iron Router 1.*和Meteor 1.*并开始,我只是使用帐户密码.

参考代码

我有一个简单的服务器端路由,将pdf呈现给屏幕:

两者/ routes.js

Router.route('/pdf-server', function() {
  var filePath = process.env.PWD + "/server/.files/users/test.pdf";
  console.log(filePath);
  var fs = Npm.require('fs');
  var data = fs.readFileSync(filePath);
  this.response.write(data);
  this.response.end();
}, {where: 'server'});
Run Code Online (Sandbox Code Playgroud)

举个例子,我想做一些接近SO答案建议的事情:

在服务器上:

var Secrets = new Meteor.Collection("secrets"); 

Meteor.methods({
  getSecretKey: function () {
    if (!this.userId)
      // check if the user has privileges
      throw Meteor.Error(403);
    return Secrets.insert({_id: Random.id(), user: this.userId});
  },
});
Run Code Online (Sandbox Code Playgroud)

然后在客户端代码中:

testController.events({
  'click button[name=get-pdf]': function () {
      Meteor.call("getSecretKey", function (error, response) {
        if (error) throw …
Run Code Online (Sandbox Code Playgroud)

authentication routing node.js meteor iron-router

10
推荐指数
3
解决办法
4382
查看次数