我正在尝试将请求中的照片网址拉到Google Places Api for Rails应用程序。我一直在使用位于https://developers.google.com/places/documentation/photos#place_photo_response
的文档我遇到的问题是我将图片作为返回,而不是网址本身。如果我手动导航到API请求的URL,我将被重定向到包含该图像的页面。我不知道如何从我的应用程序访问我重定向到的URL。我正在使用的代码是:
raw_rest = HTTParty.get("https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=#{@lat},#{@long}&radius=50000&types=restaurant&key=#{Rails.application.secrets.google_api_key}")
@photo_reference = raw_rest["results"][0]["photos"][0]["photo_reference"]
@photo = HTTParty.get("https://maps.googleapis.com/maps/api/place/photo?maxwidth=400&photoreference=#{@photo_reference}&key=#{Rails.application.secrets.google_api_key}"
当我在rails控制台中运行时,我可以看到返回是一张图片(正如Google Places API所说的那样)。但是,我不知道如何在没有URL的情况下显示图像。如果Rails中有一种方法可以显示保存到变量的图像,或者从HTTParty中提取重定向URL,那就太棒了。
提前致谢!如果有任何问题,请告诉我!
答案 0 :(得分:1)
您可以使用
从控制器显示图像send_data @photo, type: '<your-content-type>', disposition: 'inline'
然后您可以在您的网站上的任何地方引用它。