class DeviceCloud::Request
Public: Used to send Net::HTTP requests.
Examples:
get_response = DeviceCloud::Request.new("/ws/FileData").get post_response = DeviceCloud::Request.new("/ws/sci").post(data)
Attributes
body[R]
path[R]
Public Class Methods
new(options = {})
click to toggle source
Public: Create a new instance of Request
.
path - The path String to use.
# File lib/device_cloud/request.rb, line 16 def initialize(options = {}) @path = options[:path] @body = options[:body] end
Public Instance Methods
delete()
click to toggle source
Public: Send a DELETE request.
Returns a DeviceCloud::Response
instance.
# File lib/device_cloud/request.rb, line 55 def delete make_request do Net::HTTP::Delete.new request_uri end end
get()
click to toggle source
Public: Send a GET request.
Returns a DeviceCloud::Response
instance.
# File lib/device_cloud/request.rb, line 24 def get make_request do Net::HTTP::Get.new request_uri end end
post()
click to toggle source
Public: Send a POST request.
body
Returns a DeviceCloud::Response
instance.
# File lib/device_cloud/request.rb, line 35 def post make_request do Net::HTTP::Post.new request_uri end end
put()
click to toggle source
Public: Send a PUT request.
body
Returns a DeviceCloud::Response
instance.
# File lib/device_cloud/request.rb, line 46 def put make_request do Net::HTTP::Put.new request_uri end end
Private Instance Methods
make_request() { || ... }
click to toggle source
# File lib/device_cloud/request.rb, line 70 def make_request Net::HTTP.start(uri.host, uri.port, use_ssl: true) do |http| request = yield request.basic_auth DeviceCloud.username, DeviceCloud.password DeviceCloud::Response.new http.request(request, body) end end
request_uri()
click to toggle source
# File lib/device_cloud/request.rb, line 62 def request_uri uri.request_uri end
uri()
click to toggle source
# File lib/device_cloud/request.rb, line 66 def uri @uri ||= URI.parse(DeviceCloud.root_url + path) end