jjzjj

ruby-on-rails - 从字符串中删除 "www", "http://"

如何使用Ruby从字符串中删除“www”、“http://”、“https://”?我试过了,但没用:s.gsub('/(?:http?:\/\/)?(?:www\.)?(.*)\/?$/i','')这是我在Rails中所做的:URL被截断了,但我的目标是删除链接的开头,例如“www”或“http://”,这样链接看起来像“google.com/somepage/d...”,不像“http://google.com/some...” 最佳答案 s=s.sub(/^https?\:\/\//,'').sub(/^www./,'')如果

Ruby 并发 : non-blocking I/O vs threads

我正在研究Ruby(1.9.3-p0)中的并发性,并创建了一个非常简单的I/O密集型代理任务。首先,我尝试了非阻塞方法:require'rack'require'rack/fiber_pool'require'em-http'require'em-synchrony'require'em-synchrony/em-http'proxy=lambda{|*|result=EM::Synchrony.syncEventMachine::HttpRequest.new('http://google.com').get[200,{},[result.response]]}useRack::Fi

ruby - 如何用ruby解析word文档?

有人知道我可以在OSX/Linux上使用的库来解析Word文件并将内容输出为HTML吗?我看过win32ole,但据我所知,它仅适用于Windows,尽管我可能错了。有什么建议吗? 最佳答案 Word文档格式(暂时忽略docx)很糟糕,而且一直在变化。恕我直言,这就是为什么很少(阅读:零)Ruby库可以解析它们。我推荐的做法是使用JRuby和一些已建立的Java库来阅读文档格式。Google应该可以帮助您:http://schmidt.devlib.org/java/libraries-word.html.有一个用于读取MIcros

Ruby 使用命名空间/模块

例如:require'net/http'uri=URI('http://example.com/some_path?query=string')Net::HTTP.start(uri.host,uri.port)do|http|request=Net::HTTP::Get.newuriresponse=http.requestrequest#Net::HTTPResponseobjectend摆脱Net::HTTP的正确/rubist方法是什么?即HTTP::Get.new()或只是Get.new() 最佳答案 如果你想缩短这些,你

ruby-on-rails - ActionDispatch::Http::UploadedFile.content_type 未在 Rspec 测试中初始化

背景:我有一个带有cover_file属性的Book模型,该模型通过我的一个RailsController使用上传的文件进行设置。我正在使用Railsv4.0.4。目标:我想测试只保存具有特定内容类型的文件。我计划使用设置了不同content_type属性的ActionDispatch::Http:UploadedFile对象创建Rspec测试示例。问题:当我用content_type初始化一个新的ActionDispatch::Http::UploadedFile时,它似乎没有被设置(请参阅下面的测试和输出,确认它为零)。看来我只能在UploadedFile初始化后用setter设置

ruby - 使用 ruby​​ mechanize 检测重定向

我正在使用mechanize/nokogirigems来解析一些随机页面。我在301/302重定向方面遇到问题。这是代码片段:agent=Mechanize.newpage=agent.get('http://example.com/page1')mydomain.com上的测试服务器会将页面1重定向到页面2,状态代码为301/302,因此我期望有page.code=="301"相反,我总是得到page.code=="200"。我的要求是:我希望遵循重定向(默认Mechanize行为,这很好)我希望能够检测到该页面实际上已被重定向我知道我可以在agent.history中看到page1

ruby - 在 Ruby 中生成 HTTP 响应

我正在开发一个连接到Web服务的应用程序。我想开发一个从服务返回虚假响应的代理类,这样我就不必在开发/测试应用程序的其他部分时不断地向它发出请求。我的应用程序期望通过Net::HTTP生成响应。response=Net::HTTP.get(URI.parse('http://foo.com'))caseresponsewhenNet::HTTPOK#dosomethingfunwhenNet::HTTPUnauthorized#yougettheidea我怎样才能制造一个响应对象,给它所有正确的header,返回一个正文字符串,等等?response=ProxyClass.respon

ruby-on-rails - 如何在 Ruby 中获取 http 请求的内容?

在PHP中我可以这样做:$request="http://www.example.com/someData";$response=file_get_contents($request);我如何在Ruby(或某些Rails方法)中做同样的事情?我在谷歌上搜索了半个小时,结果完全没找到。 最佳答案 标准库包open-uri就是您所追求的:require'open-uri'contents=open('http://www.example.com'){|io|io.read}#orcontents=URI.parse('http://ww

ruby - 如何使用 Ruby 获取缩短 URL 的目标 URL?

如何获取此URLhttp://t.co/yjgxz5Y并获取目标URL,即http://nickstraffictricks.com/4856_how-to-rank-1-in-google/ 最佳答案 require'net/http'require'uri'Net::HTTP.get_response(URI.parse('http://t.co/yjgxz5Y'))['location']#=>"http://nickstraffictricks.com/4856_how-to-rank-1-in-google/"

ruby-on-rails - 无法重新索引 Sunspot SOLR - 错误 - RSolr::Error::Http - 500 内部服务器错误

每次我尝试使用...重建索引rakesunspot:solr:reindex这些错误消息总是显示:Error-RSolr::Error::Http-500InternalServerError-retrying...Error-RSolr::Error::Http-500InternalServerError-ignoring...Error-RSolr::Error::Http-500InternalServerError-retrying...Error-RSolr::Error::Http-500InternalServerError-ignoring...我试着停止然后开始使用