class ScrapboxClient::Client
Constants
- BASE_URI_V1
- URI_RESOURCE_MAP
Attributes
project_name[R]
Public Class Methods
new(project_name:)
click to toggle source
# File lib/scrapbox_client.rb, line 18 def initialize(project_name:) @project_name = project_name end
Public Instance Methods
fetch_page(page_title:)
click to toggle source
# File lib/scrapbox_client.rb, line 33 def fetch_page(page_title:) return unless page_title params = { project_name: project_name, page_title: page_title, } res = request_api(resource: URI_RESOURCE_MAP[:page], params: params) return res end
fetch_page_body(page_title:)
click to toggle source
# File lib/scrapbox_client.rb, line 44 def fetch_page_body(page_title:) return unless page_title params = { project_name: project_name, page_title: page_title, } res = request_api(resource: URI_RESOURCE_MAP[:page_body], params: params) return res end
fetch_page_image(page_title:)
click to toggle source
# File lib/scrapbox_client.rb, line 55 def fetch_page_image(page_title:) return unless page_title params = { project_name: project_name, page_title: page_title, } res = request_api(resource: URI_RESOURCE_MAP[:page_image], params: params) return res end
fetch_page_list(skip: skip = 0, limit: limit = 100)
click to toggle source
# File lib/scrapbox_client.rb, line 22 def fetch_page_list(skip: skip = 0, limit: limit = 100) params = { project_name: project_name, skip: skip, limit: limit, } res = request_api(resource: URI_RESOURCE_MAP[:page_list], params: params) return res end
Private Instance Methods
request_api(resource:, params:)
click to toggle source
# File lib/scrapbox_client.rb, line 67 def request_api(resource:, params:) uri = URI.parse(BASE_URI_V1 + sprintf(resource, params)) res = Net::HTTP.start(uri.host, uri.port, use_ssl: uri.scheme == 'https') do |http| http.open_timeout = 5 http.read_timeout = 10 http.get(uri.request_uri) end unless res.code == '200' || res.code == '302' raise "request failed with status code " + res.code end return res end