小编use*_*712的帖子

Node.js中有没有像Rails中的scaffold一样的东西?

Node.js中是否有任何工具或框架允许您在数据库中创建表并像Rails一样自动生成RESTful API?

非常感谢!

ruby-on-rails node.js sails.js

31
推荐指数
2
解决办法
2万
查看次数

为restify.js实现基于令牌的身份验证的最佳方法是什么?

我正在尝试使用restify.js构建RESTful api,但我不想向所有人公开api.我将使用基于令牌的身份验证.我心中的过程是这样的,我不确定它是否合理.

  1. 用户向api发送用户名/密码以获取令牌.

  2. 这个令牌应该包含在每个其他api的调用请求中.

如果这是合理的,我可以使用任何node.js库吗?

另外,我该如何保护令牌?如果有人用令牌拦截了http请求,那么该人将获得api url和令牌.然后他可以按照自己的意愿发送请求.有办法避免这种情况吗?

非常感谢!

authentication restful-authentication node.js restify

12
推荐指数
1
解决办法
8238
查看次数

"grep -e"和"grep -E"之间有什么区别

我有一个文件test.txt,其中有一些格式化的电话号码.我正试图grep找到包含电话号码的线路.

它似乎grep -e "[0-9]{3}-[0-9]{3}-[0-9]{4}" test.txt不起作用,没有结果.但是grep -E "[0-9]{3}-[0-9]{3}-[0-9]{4}" test.txt有效.所以我想知道这两个选项之间有什么区别.

根据man grep:

-E, - extended-regexp将模式解释为扩展正则表达式(即强制grep表现为egrep).

-e pattern, - regexp = pattern指定搜索输入时使用的模式:如果输入行匹配任何指定的模式,则选择该输入行.当多个-e选项用于指定多个模式时,或者当模式以短划线(" - ")开头时,此选项最有用.

但我不太明白.什么是扩展的正则表达式?

linux shell grep

11
推荐指数
2
解决办法
1万
查看次数

如何实现具有多个使用者和多个队列的消费者 - 生产者

假设有1个生产者P和2个消费者C1和C2.并且有2个队列Q1和Q2,都具有特定容量.

P将生产物品并交替进入Q1和Q2.物品是为特定消费者生产的,不能被其他消费者消费.我如何在Java中实现以下内容:在我启动3个线程后,如果Q1为空,则线程C1被阻塞,直到在Q1中存在某些内容时通知它.Q2也是如此.当Q1和Q2都满时,P将被阻止,直到Q1或Q2未满时通知.

我正在考虑使用BlockingQueue,它会在队列为空时阻止使用者.但问题是当其中一个队列已满时,生产者将被阻止.我们可以使用Java中的任何数据结构来解决这个问题吗?

更新

我自己有一个解决方案,但我不确定它是否有效.我们仍然可以有2个BlockingQueues.当消费者从其队列中获取项目时,它会使用BlockingQueue.take(),因此当队列中没有项目时它将被阻止.当生产者将项目添加到任一队列时,它使用BlockingQueue.offer().因此,它永远不会被此操作阻止,并且如果队列已满,它将变为"false".另外,我们保留一个AtomicInteger来指示未满的队列数.每当生产者P想要将一个项目放入队列时,如果它得到错误的返回,我们将AtomicInteger减少1.当它达到0时,生成器调用AtomicInteger.wait().每当消费者从其队列中获取项目时,它也会检查AtomicInteger.当它为0时,消费者将其增加1并进行呼叫AtomicInteger.notify().

请让我知道这个解决方案是否有意义.

非常感谢!

java concurrency messaging producer-consumer java.util.concurrent

8
推荐指数
1
解决办法
2192
查看次数