Class: QgsServerApi¶
- class qgis.server.QgsServerApi(serverIface: QgsServerInterface)¶
Bases:
sip.wrapper
Creates a
QgsServerApi
objectQgsServerApi(
QgsServerApi
)Server generic API endpoint abstract base class.
See also
An API must have a name and a (possibly empty) version and define a (possibly empty) root path (e.g. “/wfs3”).
The server routing logic will check incoming request URLs by passing them to the API’s accept(url) method, the default implementation performs a simple check for the presence of the API’s root path string in the URL. This simple logic implies that APIs must be registered in reverse order from the most specific to the most generic: given two APIs with root paths ‘/wfs’ and ‘/wfs3’, ‘/wfs3’ must be registered first or it will be shadowed by ‘/wfs’. APIs developers are encouraged to implement a more robust accept(url) logic by making sure that their APIs accept only URLs they can actually handle, if they do, the APIs registration order becomes irrelevant.
After the API has been registered to the server API registry:
class API(:py:class:`.QgsServerApi`): def name(self): return "Test API" def rootPath(self): return "/testapi" def executeRequest(self, request_context): request_context.response().write(b"\"Test API\"") server = QgsServer() api = API(server.serverInterface()) server.serverInterface().serviceRegistry().registerApi(api)
the incoming calls with an URL path starting with the API root path will be routed to the first matching API and
executeRequest()
method of the API will be invoked.New in version 3.10:
Methods
Returns
True
if the givenurl
is handled by the API, default implementation checks for the presence of rootPath inside theurl
path.Returns the API description
Executes a request by passing the given
context
to the API handlers.Returns the API name
Returns the root path for the API
Returns the server interface
Returns the version of the service
- accept(self, url: QUrl) bool ¶
Returns
True
if the givenurl
is handled by the API, default implementation checks for the presence of rootPath inside theurl
path.- Parameters
url (QUrl) –
- Return type
bool
- description(self) str ¶
Returns the API description
- Return type
str
- executeRequest(self, context: QgsServerApiContext)¶
Executes a request by passing the given
context
to the API handlers.- Parameters
context (QgsServerApiContext) –
- name(self) str ¶
Returns the API name
- Return type
str
- rootPath(self) str ¶
Returns the root path for the API
- Return type
str
- serverIface(self) QgsServerInterface ¶
Returns the server interface
- Return type
- version(self) str ¶
Returns the version of the service
Note
the default implementation returns an empty string
- Return type
str