Module: GoogleSpreadsheet::Util
- Included in:
- Session, Session, Spreadsheet, Table, Worksheet
- Defined in:
- lib/google_spreadsheet.rb
Overview
:nodoc:
Class Method Summary collapse
- .as_utf8(str) ⇒ Object
- .encode_query(params) ⇒ Object
- .h(str) ⇒ Object
- .http_request(method, url, data, header = {}) ⇒ Object
- .uri_encode(str) ⇒ Object
Class Method Details
.as_utf8(str) ⇒ Object
102 103 104 |
# File 'lib/google_spreadsheet.rb', line 102 def as_utf8(str) str.force_encoding("UTF-8") end |
.encode_query(params) ⇒ Object
90 91 92 |
# File 'lib/google_spreadsheet.rb', line 90 def encode_query(params) return params.map(){ |k, v| uri_encode(k) + "=" + uri_encode(v) }.join("&") end |
.h(str) ⇒ Object
98 99 100 |
# File 'lib/google_spreadsheet.rb', line 98 def h(str) return CGI.escapeHTML(str.to_s()) end |
.http_request(method, url, data, header = {}) ⇒ Object
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/google_spreadsheet.rb', line 70 def http_request(method, url, data, header = {}) uri = URI.parse(url) http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = uri.scheme == "https" http.verify_mode = OpenSSL::SSL::VERIFY_NONE http.start() do path = uri.path + (uri.query ? "?#{uri.query}" : "") if method == :delete response = http.__send__(method, path, header) else response = http.__send__(method, path, data, header) end if !(response.code =~ /^2/) raise(GoogleSpreadsheet::Error, "Response code #{response.code} for POST #{url}: " + CGI.unescapeHTML(response.body)) end return response.body end end |
.uri_encode(str) ⇒ Object
94 95 96 |
# File 'lib/google_spreadsheet.rb', line 94 def uri_encode(str) return URI.encode(str, /#{URI::UNSAFE}|&/n) end |