module MediaWiktory::Wikipedia::Modules::Json
Output data in JSON format.
The “submodule” (MediaWiki API term) is included in action after setting some param, providing additional tweaking for this param. Example (for {MediaWiktory::Wikipedia::Actions::Query} and its submodules):
“`ruby api.query # returns Actions::Query
.prop(:revisions) # adds prop=revisions to action URL, and includes Modules::Revisions into action .limit(10) # method of Modules::Revisions, adds rvlimit=10 to URL
“`
All submodule's parameters are documented as its public methods, see below.
Public Instance Methods
@private
# File lib/mediawiktory/wikipedia/modules/json.rb, line 52 def _formatversion(value) defined?(super) && super || ["1", "2", "latest"].include?(value.to_s) && merge(formatversion: value.to_s) end
If specified, encodes all non-ASCII using hexadecimal escape sequences. Default when formatversion is 1.
@return [self]
# File lib/mediawiktory/wikipedia/modules/json.rb, line 39 def ascii() merge(ascii: 'true') end
If specified, wraps the output into a given function call. For safety, all user-specific data will be restricted.
@param value [String] @return [self]
# File lib/mediawiktory/wikipedia/modules/json.rb, line 25 def callback(value) merge(callback: value.to_s) end
Output formatting:
@param value [String] One of “1” (Backwards-compatible format (XML-style booleans, * keys for content nodes, etc.)), “2” (Experimental modern format. Details may change!), “latest” (Use the latest format (currently 2), may change without warning). @return [self]
# File lib/mediawiktory/wikipedia/modules/json.rb, line 47 def formatversion(value) _formatversion(value) or fail ArgumentError, "Unknown value for formatversion: #{value}" end
If specified, encodes most (but not all) non-ASCII characters as UTF-8 instead of replacing them with hexadecimal escape sequences. Default when formatversion is not 1.
@return [self]
# File lib/mediawiktory/wikipedia/modules/json.rb, line 32 def utf8() merge(utf8: 'true') end