我使用ruby和谷歌反向geocode yql表,以理想的自动化我有一些搜索查询.我遇到的问题是将查询转换为合法的网址格式.问题是我使用的编码是返回非法的URL.我正在运行的查询如下
query="select * from google.geocoding where q='40.714224,-73.961452'" pQuery= CGI::escape(query)
http://query.yahooapis.com/v1/public/yql?q=select+%2A+from+google.geocoding+where+q%3D%2740.3714224%2C--73.961452%27+format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=
唉url是非法的.当检查YQL控制台中查询的样子时,我得到以下内容
http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20google.geocoding%20where%20q%3D%2240.714224%2C-73.961452%22&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=
解决方法
如果你想转义一个URI,你应该使用URI :: escape:
require 'uri' URI.escape("select * from google.geocoding where q='40.714224,-73.961452'") # => "select%20*%20from%20google.geocoding%20where%20q='40.714224,-73.961452'"
原文地址:https://www.jb51.cc/ruby/266670.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。