我们使用的是Rails 3.0.6,Ruby 1.8.7。
代码:
url = 'https://docs.google.com/spreadsheet/pub?hl=en_US&hl=en_US&key=0Ala-Qy5xnYGFdE83bng2RC0yTVFVUDVfNW5NV2hwc1E&output=csv'
uri = URI.parse url
req = Net::HTTP::Get.new uri.path
http = Net::HTTP.new uri.host, uri.port
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
http.use_ssl = true
response = http.request req
puts response
输出:
#<Net::HTTPInternalServerError:0xc80edb8>
<!DOCTYPE html><html lang="en">
<head>
<meta name="description" content="Web word processing, presentations and spreadsheets" />
<link rel="shortcut icon" href="//www.google.com/images/icons/product/spreadsheets-16.png" />
<title>Google Docs Error</title>
<style type="text/css">body {background-color: #fff; font-family: Arial,sans-serif; font-size: 13px; margin: 0; padding: 0;}a, a: link, a: visited {color: #112ABB;}</style>
<style type="text/css">.errorMessage {font-size: 12pt; font-weight: bold; line-height: 150%; padding-top: 25px;}</style>
</head>
<body>
<div style="padding: 8px;">
<a href="//docs.google.com/">
<img border="0" id="docs-logo" src="//ssl.gstatic.com/docs/common/logo/docs_logo.gif" width="122" border="0" alt="">
</a>
</div>
<center>
<table>
<tr>
<td>
<p style="padding-top: 15px">Google Docs has encountered a server error. If reloading the page doesn't help, please <a href="http://docs.google.com/support/bin/request.py?hl=en&ctx=docs&contact_type=server_error">contact us</a>.</p>
<p>We're sorry, a server error occurred. Please wait a bit and try reloading your spreadsheet.<br>
To discuss this or other issues, visit the <a href="http://www.google.com/support/forum/p/Google+Docs?hl=en">Google Docs Help forum</a>. To see the list of known problems, check the <a href="http://docs.google.com/support/bin/static.py?hl=en&page=known_issues.cs">Google Docs Known Issues page</a>.</p>
<p><br><b>Sorry, and thanks for your help!</b><br>
<i>- The Google Docs Team</i></p>
</td>
</tr>
</table>
</center>
</body>
</html>
回复表明这是一个谷歌服务器错误,但我们无法想象它会在这样的例行电话中窒息。
电子表格已发布,任何有链接的人都可以访问。
我们做错了吗?
答案 0 :(得分:0)
试一试
要求'net / https'
url ='https://docs.google.com/spreadsheet/pub?hl=en_US&hl=zh_CN&key=0Ala-Qy5xnYGFdE83bng2RC0yTVFVUDVfNW5NV2hwc1E&output=csv'
uri = URI.parse url
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(uri.request_uri)
response = http.request(request)
puts response.body