小编ibo*_*oss的帖子

找不到404,但可以从Web浏览器正常访问

我在这上面尝试过很多网址,看起来很好,直到我遇到这个特定的网址:

require 'rubygems'
require 'nokogiri'
require 'open-uri'

doc = Nokogiri::HTML(open("http://www.moxyst.com/fashion/men-clothing/underwear.html"))
puts doc
Run Code Online (Sandbox Code Playgroud)

这是结果:

/Users/macbookair/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/open-uri.rb:353:in `open_http': 404 Not Found (OpenURI::HTTPError)
    from /Users/macbookair/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/open-uri.rb:709:in `buffer_open'
    from /Users/macbookair/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/open-uri.rb:210:in `block in open_loop'
    from /Users/macbookair/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/open-uri.rb:208:in `catch'
    from /Users/macbookair/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/open-uri.rb:208:in `open_loop'
    from /Users/macbookair/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/open-uri.rb:149:in `open_uri'
    from /Users/macbookair/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/open-uri.rb:689:in `open'
    from /Users/macbookair/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/open-uri.rb:34:in `open'
    from test.rb:5:in `<main>'  
Run Code Online (Sandbox Code Playgroud)

我可以从网络浏览器访问它,我根本就没有得到它.

发生了什么,我该如何处理这种错误?我可以忽略它,让其余的工作吗?

ruby open-uri nokogiri http-status-code-404

5
推荐指数
2
解决办法
3421
查看次数

如何在端口80上运行环回应用程序

我正在使用基于expressjs的loopback.io,我试图添加port作为第一个参数,app.listen如下所示:

// server.js

app.start = function() {
  // start the web server
  return app.listen(80, function() {
    app.emit('started');
    console.log('Web server listening at: %s', app.get('url'));
  });
};
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

我一直在寻找这个,但我还没有找到解决方案.

node.js express loopbackjs

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

Ruby:堆栈级别太深(SystemStackError)

我试着解决这个问题http://www.nattee.net/~dae/algo/prob/hw03b_tiling/problem.pdf

所以我使用分而治之的方法来解决它,但是当我执行我的程序时,我得到了

tile.rb:7: stack level too deep (SystemStackError)
Run Code Online (Sandbox Code Playgroud)

这是我的代码

def tile (x, y, bx, by, ex, ey)
    mx = (bx+ex)/2
    my = (by+ey)/2

    if (by<=y && y<=my)
        if (bx<=x && x<=mx) # top-left
            puts "0 #{mx} #{my}"
        elsif (mx+1<=x && x<=ex) # top-right
            puts "1 #{mx} #{my}"
        end
    elsif (my+1<=y && y<=ey)
        if (bx<=x && x<=mx) # bottom-left
            puts "2 #{mx} #{my}"
        elsif (mx+1<=x && x<=ex) # bottom-right
            puts "3 #{mx} #{my}"
        end
    end

    tile(x,y,bx,by,mx,my) #top-left
    tile(x,y,mx+1,by,ey,my) #top-right
    tile(x,y,bx,my+1,mx+1,ey) …
Run Code Online (Sandbox Code Playgroud)

ruby algorithm stack

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