Rails代理控制器没有正确拉动图像,如何正确修改?
我必须在Rails 3.1应用程序上实现代理以克服一些跨域JS问题。
到目前为止,我检索网页文本源似乎是正确的,但它通常会错过页面中的图像(可能是相对路径?),然后当我用图像的绝对路径引导它时,它将显示图像的ascii编码而不是对于熟悉该主题的人来说,我认为出于显而易见的原因而不是图像本身。
我希望有人能够修改以下代码,以便在图像代理情况下正常工作:
proxy_controller.rb:
class ProxyController result.body end end
routes.rb中:
get "proxy" => "proxy#get", :as => "proxy"
通过以下方式呼叫:
http:///proxy?url=http:///path/to/page/images/image.jpg
要么
http:///proxy?url=http:///path/to/page
而不是渲染,使用send_data
我认为你应该使用base64编码,如果你将显示这个获取HTML
send_data Base64.encode64(result.body), type: result.content_type, disposition: 'inline'
并在您的html和javascript请求中使用
$('#image-wrapper').html('')