Tag: 客户端

找到Web应用程序客户端的操作系统

我有一个要求,我必须找到我的网络应用程序的用户的操作系统详细信息。 如果用户在Windows上运行它应该给“Windows 7 … Blah blah”如果Linux“Ubuntu … blah..blah或Fedora .. ..”如果Debian“无论哪个”版本的Debian。 任何人都可以建议我们如何做到这一点? 我看了一下sys-uname gem。 但它让我只知道服务器端信息。

使用Ruby将XML请求发布到Web服务器

我担心我在Web服务器上发布文档(例如XML)的经验不多,所以如果我对HTTP的理解不足,我会道歉。 我在127.0.0.1端口2000上的ruby应用程序中设置了一个基本的Mongrel Web服务器。 (服务器)。 我在同一台计算机上运行一个单独的Ruby应用程序。 (客户端)。 我需要客户端将XML文档POST到服务器。 我曾尝试使用Net :: HTTP来做到这一点,但我找不到一个明确的例子,告诉我应该做些什么。 我有一个去,但遇到了错误。 我已经打破了请求,使其尽可能基本: http = Net::HTTP.new(“127.0.0.1”, 2000) http.post(‘file’, ‘query=foo’) #xc.rb line 6 但它会导致以下错误 C:/Ruby193/lib/ruby/1.9.1/net/protocol.rb:141:in `read_nonblock’: An existing connection was forcibly closed by the remote host. (Errno::ECONNRESET) from C:/Ruby193/lib/ruby/1.9.1/net/protocol.rb:141:in `rbuf_fill’ from C:/Ruby193/lib/ruby/1.9.1/net/protocol.rb:122:in `readuntil’ from C:/Ruby193/lib/ruby/1.9.1/net/protocol.rb:132:in `readline’ from C:/Ruby193/lib/ruby/1.9.1/net/http.rb:2562:in `read_status_line’ from C:/Ruby193/lib/ruby/1.9.1/net/http.rb:2551:in `read_new’ from C:/Ruby193/lib/ruby/1.9.1/net/http.rb:1319:in `block in transport_request’ […]

是否有带响应缓存的Ruby http客户端库?

是否有一个Ruby http客户端库,其中响应由ETag自动缓存,If-Non-Match标头应用于以前使用的URL上的请求?

使用Ruby中的SSLServervalidation客户端证书

下面是我用来设置服务器的代码: require ‘socket’ require ‘openssl’ socket = TCPServer.new(‘127.0.0.1’, 4433) ssl_context = OpenSSL::SSL::SSLContext.new() ssl_context.cert = OpenSSL::X509::Certificate.new(File.open(“ssl/server/server.crt”)) ssl_context.key = OpenSSL::PKey::RSA.new(File.open(“ssl/server/server.key”)) ca_cert = OpenSSL::X509::Certificate.new(File.open(“ssl/ca/ca.crt”)) ssl_socket = OpenSSL::SSL::SSLServer.new(socket, ssl_context) Thread.start(ssl_socket.accept) do |s| puts “Connected to #{s.peeraddr.last}” if s.peer_cert.verify(ca_cert.public_key) puts “Certificate verified” else puts “Certificate invalid” end end 和客户: require ‘socket’ require ‘openssl’ socket = TCPSocket.new(‘127.0.0.1’, 4433) ssl_context = OpenSSL::SSL::SSLContext.new […]