Module: Tiktok::Open::Sdk::HttpClient
Overview
HTTP client utilities for TikTok Open SDK.
Provides methods to perform HTTP requests with support for GET and POST.
Constant Summary collapse
- SUPPORTED_METHODS =
Supported HTTP methods.
i[get post].freeze
Instance Method Summary collapse
-
#get(url, params: {}, headers: {}) ⇒ Net::HTTPResponse
Performs a GET HTTP request.
-
#post(url, params: {}, headers: {}, body: nil) ⇒ Net::HTTPResponse
Performs a POST HTTP request.
-
#request(method, url, params: {}, headers: {}, body: nil) ⇒ Net::HTTPResponse
Performs an HTTP request.
Instance Method Details
#get(url, params: {}, headers: {}) ⇒ Net::HTTPResponse
Performs a GET HTTP request.
60 61 62 |
# File 'lib/tiktok/open/sdk/http_client.rb', line 60 def get(url, params: {}, headers: {}) request(:get, url, params: params, headers: headers) end |
#post(url, params: {}, headers: {}, body: nil) ⇒ Net::HTTPResponse
Performs a POST HTTP request.
50 51 52 |
# File 'lib/tiktok/open/sdk/http_client.rb', line 50 def post(url, params: {}, headers: {}, body: nil) request(:post, url, params: params, headers: headers, body: body) end |
#request(method, url, params: {}, headers: {}, body: nil) ⇒ Net::HTTPResponse
Performs an HTTP request.
28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/tiktok/open/sdk/http_client.rb', line 28 def request(method, url, params: {}, headers: {}, body: nil) ensure_supported_method!(method) uri = URI(url) uri.query = URI.encode_www_form(params) if method == :get && params.any? http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = uri.scheme == 'https' http.read_timeout = 10 http.open_timeout = 5 http_request = build_http_request(method, uri, headers, body) http.request(http_request) end |