小编Pet*_*kas的帖子

rspec 3 - 存根类方法

我从rspec的2.99升级到3.0.3 RSPEC和具有转换实例方法使用allow_any_instance_of,但还没有想出如何存根类方法.我有这样的代码:

module MyMod
  class Utils
    def self.find_x(myarg)
      # Stuff
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

我的rspec 2测试做到了这一点:

MyMod::Utils.stub(:find_x).and_return({something: 'testing'})
Run Code Online (Sandbox Code Playgroud)

什么是Rspec 3的做法?

ruby rspec ruby-on-rails rspec3

88
推荐指数
1
解决办法
6万
查看次数

LESS mixin一个变量类名

我正在使用Font Awesome 4.0.0,并希望在LESS中执行类似的操作:

.btn-github {
  .btn;
  .btn-primary;
  margin-left: 3em;

  i {
    .@{fa-css-prefix};
    .@{fa-css-prefix}-github;
    .@{fa-css-prefix}-lg;
    margin-right: 1em;
  }
}
Run Code Online (Sandbox Code Playgroud)

这不会编译错误:

ParseError: Unrecognised input in - on line ...

有可能做到这一点吗?它肯定会为我做一个漂亮的按钮.

css less twitter-bootstrap font-awesome

23
推荐指数
1
解决办法
3万
查看次数

OO设计模式用于验证

我正在根据这些假设编写一些验证代码:

  • 验证码必须在外部类中
    • 即没有数据类包含它自己的验证
  • 可以以不同方式验证相同的对象
    • 例如只验证语法; 验证数据库查找; 验证重复; 等等
  • 验证输出可能会根据需要而有所不同
    • 例如,输出单个错误消息; 输出所有验证错误的列表; 类似但以JSON格式包含错误代码; 等等

OO设计模式的哪些组合最能解决这个问题?工厂可能是获得特定验证器的好方法,但它们是更好的方法吗?

oop design-patterns

14
推荐指数
1
解决办法
8419
查看次数

Java Servlet API是否向后兼容?

我想编写一个使用javax servlet API的JAR文件.如果我针对2.2版进行编写,是否意味着它适用于版本2.3,2.4和2.5?

谢谢

java servlets

13
推荐指数
2
解决办法
4135
查看次数

Guice + Tomcat潜在的内存泄漏

我刚刚开始在我的Tomcat webapp中使用Google Guice,并且只要取消部署WAR文件,就会在catalina.out文件中注意到以下内容:

May 16, 2011 5:37:24 PM org.apache.catalina.startup.HostConfig checkResources INFO: Undeploying context [/app]

May 16, 2011 5:37:24 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads SEVERE: A web application appears to have started a thread named [com.google.inject.internal.util.$Finalizer] but has failed to stop it. This is very likely to create a memory leak.

May 16, 2011 5:37:24 PM org.apache.catalina.loader.WebappClassLoader clearThreadLocalMap SEVERE: A web application created a ThreadLocal with key of type [null] (value [com.google.inject.internal.InjectorImpl$1@10ace8d]) and a value of type [java.lang.Object[]] (value [[Ljava.lang.Object;@7e9bed]) but failed to …

java tomcat guice guice-servlet

12
推荐指数
2
解决办法
9491
查看次数

API身份验证设计和可攻击性

问题:这种API身份验证技术是否易于破解?

apiKey = "123456789"
apiCallId = "1256341451"
apiSecret = "67d48e91ab2b7471d4be2a8c2e007d13"
sig = md5(apiKey + apiCallId + apiSecret) = 09c297a354219f173bfc49c2e203ce03
Run Code Online (Sandbox Code Playgroud)

哪里

  • apiKey:用户的一些唯一标识符
  • apiCallId:一个必须增加值的唯一整数(例如UNIX时间戳)
  • apiSecret:仅对用户和我们知道的字符串 - 不在URL中传递
  • sig:此API调用的"unhackable"签名 - MD5哈希

示例API调用:

http://api.domain.com/?apiKey=123456789&apiCallId=1256341451&sig=09c297a354219f173bfc49c2e203ce03&param1=x&param2=y
Run Code Online (Sandbox Code Playgroud)

此API不需要会话,也不是为第三方代表用户设计的.相反,它将由用户自己使用.

我真的很喜欢这个的简单性.要求apiCallId独特,并且不断增加意味着重用a sig是不可能的,所以我觉得它是安全的(防止重放攻击),但我不是专家.

其他API在计算时使用按字母顺序排序的所有GET参数sig,但我不明白为什么在包含时需要这样做apiCallId.

请在实施和发布之前尝试破解它.

我欢迎任何反馈,建议和安全教育.

security authentication api cryptography

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

不同语言的memcache客户端是否以相同的方式散列?

我们希望在Java应用程序中进行一些处理,将结果存储在我们的memcache服务器池中,并使用PHP中的memcache将其读回.

这很容易尝试,但我会问,看看是否还有其他人这样做过.

只要Java和PHP客户端连接到同一个memcache服务器池,两个客户端是否都会散列到同一服务器位置,从而可以从PHP进行检索?

php java memcached

7
推荐指数
1
解决办法
834
查看次数

防止rails 5架构中create_table的"选项"

我的Rails 5 schema.rb文件有options:每个部分create_table,我不想.我有的是:

  create_table "accounts", id: false, force: :cascade, options: "ENGINE=InnoDB DEFAULT CHARSET=utf8" do |t|
Run Code Online (Sandbox Code Playgroud)

但我想要的是:

  create_table "accounts", id: false, force: :cascade do |t|
Run Code Online (Sandbox Code Playgroud)

由于这是一个生成文件,我不想手动编辑它.

我不想要这个options部分的原因是因为对于一个快速的TDD循环,我想在内存中使用SQLite RAILS_ENV=test但是MySQL在开发和生产中.

如何防止生成数据库适配器特定选项并将其放入架构中?

tdd activerecord ruby-on-rails ruby-on-rails-5

5
推荐指数
1
解决办法
366
查看次数

有可重用对话框的最佳方法是什么?

在Android中创建可重用对话框的最佳方法是什么?

通过Dialog开发指南阅读,我知道我可以AlertDialog.Builder(this);在我Activity的一个中使用,但如果我想在多个活动中使用它,该怎么办?如果这是其他类我会扩展它,所以MyDialog extends AlertDialog,但是我不能使用Builder.

有什么建议?

android dialog android-alertdialog

3
推荐指数
1
解决办法
2736
查看次数