2017-05-06 68 views
0

我正在做一个http请求到一个网站,我想从响应中存储一个div的值。从NET中读取div的内容:HTTP响应

这是我做的控制器:

class RoomsController < ApplicationController 
    require "uri" 
    require "net/http" 
    require 'json' 
    require 'cgi' 

    def test  
    dialect = params[:dialect] 
    text = params[:text] 

    uri = URI('http://www.degraeve.com/cgi-bin/babel.cgi') 
    params = { :w => text, :d => dialect } 
    uri.query = URI.encode_www_form(params) 

    res = Net::HTTP.get_response(uri) 
    data = res if res.is_a?(Net::HTTPSuccess) 

    render json: data.body 

    end 

end 

我传递用GET方法获取响应2个参数。但我只需要一个div的内容。我怎么做?

回答

0

我这样做:

dialect = current_user.dialect.name 
    text = params[:text] 

    uri = URI('http://www.degraeve.com/cgi-bin/babel.cgi') 
    params = { :w => text, :d => dialect } 
    uri.query = URI.encode_www_form(params) 

    response = Net::HTTP.get_response(uri) 

    render inline: response.body.html_safe, layout: false if response.is_a?(Net::HTTPSuccess) 

,然后得到了我在.js文件中想要的股利。