<?xml version="1.0" encoding="UTF-8" ?> <node name="/org/chromium/WebServer/RequestHandler" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0"> <interface name="org.chromium.WebServer.RequestHandler"> <!-- Methods --> <method name="ProcessRequest"> <tp:docstring> Sends a new HTTP request to the handler. Parameters: - request_info - request metadata. Due to limitation of base::Callback on the number of parameters, we have to collapse a couple of distinct parameters into a larger struct, containing: - (s) protocol_handler_id - ID of the protocol handler. - (s) request_handler_id - ID of the registered request handler. - (s) request_id - unique ID of this request within the protocol handler. - (s) url - The request URL (e.g. "/path/object"). - (s) method - Request method (e.g. "GET", "POST", ...). - headers - Request headers (key-value pairs) - params - an array of request parameters which could be either URL params (specified after "?" in the request URL), or form fields in a POST request. Elements have the following structure: - (b) true = form field, false = URL param - (s) field_name - (s) field_value - files - Information about uploaded files. The data is an array of FileInfo structures containing the following fields: - (i) file_id - (s) field_name - (s) file_name - (s) content_type - (s) transfer_encoding The actual contents of the file is obtained by calling GetFileData() on the request object - body - Raw unparsed request data. Could be empty for POST requests that have form data/uploaded files already parsed into form_fields/files parameters. The data is sent over D-Bus as a file descriptor representing the read end of a pipe. </tp:docstring> <arg name="request_info" type="(sssss)" direction="in"/> <arg name="headers" type="a(ss)" direction="in"/> <arg name="params" type="a(bss)" direction="in"/> <arg name="files" type="a(issss)" direction="in"/> <arg name="body" type="h" direction="in"/> <annotation name="org.chromium.DBus.Method.Kind" value="normal"/> </method> </interface> </node>