小编Sen*_*jai的帖子

如何安全地读取PKCS12并将其传递给红宝石中的对象?

我目前正在使用google api客户端gem与google api通信。它使用PKCS12对这些服务进行身份验证,并使用OpenSSL :: PKCS12.new

http://www.ruby-doc.org/stdlib-2.0/libdoc/openssl/rdoc/OpenSSL/PKCS12.html

但是,当我使用File.read读取文件并尝试传递字符串时,我得到String出现空字节错误。如何避免这种情况,并确保它仍然是PKCS12类的DER编码?

ruby ssl encoding openssl pkcs#12

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

Unexpected =在coffeescript类定义中

我是咖啡脚本的新手,这个定义可能比这个问题本身更糟糕.

特定

class window.SlideManager                                                                                                                                                                     
  constructor: (@$contentDiv, @analyticsCanvas) ->                                                                                                                                            
    @iterator = Iterator(@slides)                                                                                                                                                             
    @slides = @$contentDiv.data('slides')                                                                                                                                                     

  nextSlide: ->                                                                                                                                                                               
    try {                                                                                                                                                                                     
      url = @iterator.next()                                                                                                                                                                  
    } catch {                                                                                                                                                                                 
      @iterator = Iterator(@slides)                                                                                                                                                           
      url = @iterator.next()                                                                                                                                                                  
    }                                                                                                                                                                                         

    this.renderSlide(url)                                                                                                                                                                     

  renderSlide: (slide) ->                                                                                                                                                                     
    $.get(slide, {nolayout: 'true'}, (data) ->                                                                                                                                                
      @$contentDiv.contents().replaceWith(data)                                                                                                                                               
      window.setupCanvas($(@analyticsCanvas), window.createChartData(window.getVisitCounts($(@analyticsCanvas))))                                                                             
    )                                                                                                                                                                                         
Run Code Online (Sandbox Code Playgroud)

我在第8行(url = @iterator.next())遇到意外=语法错误

有谁知道我可能会缺少什么?

coffeescript

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

将块作为对象保存到变量中,而无需在 ruby​​ 中定义函数

我现在正在研究街区,它们难倒了我。

我用这个作为例子:

class ProcExample
  attr_reader :proc_class
  def initialize(&block)
    @stored_proc = block
    @proc_class = @stored_proc.class
  end
  def use_proc(arg)
    @stored_proc.call(arg)
  end
end

eg = ProcExample.new {|t| puts t}
p eg.proc_class
p eg.use_proc("Whoooooooo")
Run Code Online (Sandbox Code Playgroud)

现在我有点(不太明白)块是如何传递到@stored_proc中的。我使用@proc_class是因为我很好奇块对象实际上存储为哪个类。

但是如果我想将块存储在常规变量中怎么办?

例如:

block_object = {|param| puts param**2}
Run Code Online (Sandbox Code Playgroud)

但我发现这被视为哈希而不是块/过程。自然就会出现错误。我尝试在变量名中和块的开头用“&”号分配它,但这不起作用。

最后我想知道是否可以调用一个函数并用包含该块的变量替换该块。

就像这样:

(1..10).each block_object
Run Code Online (Sandbox Code Playgroud)

这在 Ruby 中可能吗?

ruby ruby-on-rails proc

0
推荐指数
1
解决办法
797
查看次数

寻找600851475143的最大素数因子

我正在尝试使用程序来找到最大的素数因子600851475143.这是针对Project Euler的:http://projecteuler.net/problem=3

我首先尝试使用此代码:

    #Ruby solution for http://projecteuler.net/problem=2
    #Prepared by Richard Wilson (Senjai)

    #We'll keep to our functional style of approaching these problems.
    def gen_prime_factors(num) # generate the prime factors of num and return them in an array
      result = []
      2.upto(num-1) do |i| #ASSUMPTION: num > 3
        #test if num is evenly divisable by i, if so add it to the result.
        result.push i if num % i == 0
        puts "Prime factor found: #{i}" # get some …
Run Code Online (Sandbox Code Playgroud)

ruby algorithm math ruby-on-rails

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

标签 统计

ruby ×3

ruby-on-rails ×2

algorithm ×1

coffeescript ×1

encoding ×1

math ×1

openssl ×1

pkcs#12 ×1

proc ×1

ssl ×1