Rails OAuth配置文件图片定义

时间:2015-05-01 08:58:11

标签: ruby-on-rails ruby oauth twitter-oauth facebook-oauth

我已在Rails 4应用程序中成功使用OAuth gems for Facebook和Twitter实现了身份验证系统。

我想要使用社交媒体身份验证的主要原因之一是获取他们的个人资料图片,而无需用户上传任何内容。我已成功实现此功能,方法是从OAuth返回的信息哈希中抓取图像,但返回的图像质量非常低。例如,我的Twitter帐户上的个人资料图片大约是400x400像素,但OAuth哈希返回的图片是20x20像素图片,即使是一个小图标也很糟糕。有没有人知道配置选项或允许我接收原始图片而不是最小化图片的东西?谢谢!

1 个答案:

答案 0 :(得分:0)

您需要安装并使用ImageMagick和RMagick gem来处理和解释图像和照片。您将能够缩放,调整大小和转换图片等。

好tuto:

http://ruby.bastardsbook.com/chapters/image-manipulation/

OR

  

不推荐:

在我已完成的应用程序中(用于学习)我直接在我的数据库中保存了图像,以便我可以使用任何css类以我想要的方式显示它们。

我的控制器是这样的:

  def _show_image
    send_data(Base64.decode64(@food.image.data), :type => @food.image.mime_type, :filename => @food.image.filename, :disposition => 'inline')
  end

我可以像这样获取视图的图像(bootstrap类):

    <%=image_tag(url_for(:controller => 'foods', :action => '_show_image'), class: "pad-bot1 img-circle") %>