Class
SoupMessage
Description [src]
final class Soup.Message : GObject.Object {
/* No available fields */
}
Represents an HTTP message being sent or received.
A SoupMessage represents an HTTP message that is being sent or received.
You would create a SoupMessage with soup_message_new() or
soup_message_new_from_uri(), set up its fields appropriately, and send it.
SoupMessage:status-code will normally be a SoupStatus value, eg,
SOUP_STATUS_OK, though of course it might actually be an unknown status
code. SoupMessage:reason-phrase is the actual text returned from the
server, which may or may not correspond to the “standard” description of
status_code. At any rate, it is almost certainly not localized, and not very
descriptive even if it is in the user’s language; you should not use
SoupMessage:reason-phrase in user-visible messages. Rather, you should
look at SoupMessage:status-code, and determine an end-user-appropriate
message based on that and on what you were trying to do.
Note that libsoup’s terminology here does not quite match the HTTP
specification: in RFC 2616, an “HTTP-message” is either a Request, or a
Response. In libsoup, a SoupMessage combines both the request and the response.
Constructors
soup_message_new
Creates a new empty SoupMessage, which will connect to uri.
soup_message_new_from_encoded_form
Creates a new SoupMessage and sets it up to send the given encoded_form
to uri via method. If method is “GET”, it will include the form data
into uri‘s query field, and if method is “POST” or “PUT”, it will be set as
request body.
soup_message_new_from_multipart
Creates a new SoupMessage and sets it up to send multipart to
uri_string via POST.
soup_message_new_from_uri
Creates a new empty SoupMessage, which will connect to uri.
soup_message_new_options_ping
Creates a new SoupMessage to send OPTIONS * to a server. The path of
base_uri will be ignored.
Instance methods
soup_message_add_flags
Adds flags to the set of msg‘s flags.
soup_message_add_header_handler
Adds a signal handler to msg for signal.
soup_message_add_status_code_handler
Adds a signal handler to msg for signal.
soup_message_disable_feature
Disables the actions of SoupSessionFeatures with the
given feature_type (or a subclass of that type) on msg.
soup_message_get_connection_id
Returns the unique idenfier for the last connection used.
soup_message_get_first_party
Gets msg‘s first-party GUri.
soup_message_get_flags
Gets the flags on msg.
soup_message_get_http_version
Gets the HTTP version of msg.
soup_message_get_is_options_ping
Gets whether msg is intended to be used to send OPTIONS * to a server.
soup_message_get_is_top_level_navigation
Returns if this message is set as a top level navigation.
soup_message_get_method
Returns the method of this message.
soup_message_get_metrics
Get the SoupMessageMetrics of msg.
soup_message_get_priority
Retrieves the SoupMessagePriority.
soup_message_get_reason_phrase
Returns the reason phrase for the status of this message.
soup_message_get_remote_address
Get the remote GSocketAddress of the connection associated with
the message.
soup_message_get_request_headers
Returns the headers sent with the request.
soup_message_get_response_headers
Returns the headers recieved with the response.
soup_message_get_site_for_cookies
Gets msg‘s site for cookies GUri.
soup_message_get_status
Returns the set status of this message.
soup_message_get_tls_ciphersuite_name
Gets the name of the TLS ciphersuite negotiated for msg‘s connection.
soup_message_get_tls_peer_certificate
Gets the peer’s GTlsCertificate associated with msg‘s connection.
soup_message_get_tls_peer_certificate_errors
Gets the errors associated with validating msg‘s TLS peer certificate.
Note that this is not set yet during the emission of
SoupMessage::accept-certificate signal.
soup_message_get_tls_protocol_version
Gets the TLS protocol version negotiated for msg‘s connection.
soup_message_get_uri
Gets msg‘s URI.
soup_message_is_feature_disabled
Get whether SoupSessionFeatures of the given feature_type
(or a subclass of that type) are disabled on msg.
soup_message_is_keepalive
Determines whether or not msg‘s connection can be kept alive for
further requests after processing msg.
soup_message_query_flags
Queries if flags are present in the set of msg‘s flags.
soup_message_remove_flags
Removes flags from the set of msg‘s flags.
soup_message_set_first_party
Sets first_party as the main document GUri for msg.
soup_message_set_flags
Sets the specified flags on msg.
soup_message_set_is_options_ping
Set whether msg is intended to be used to send OPTIONS * to a server.
soup_message_set_is_top_level_navigation
Sets whether the current request is a top-level navitation.
soup_message_set_method
Set msg‘s HTTP method to method.
soup_message_set_priority
Sets the priority of a message.
soup_message_set_request_body
Set the request body of a SoupMessage.
soup_message_set_request_body_from_bytes
Set the request body of a SoupMessage from GBytes.
soup_message_set_site_for_cookies
Sets site_for_cookies as the policy URL for same-site cookies for msg.
soup_message_set_tls_client_certificate
Sets the certificate to be used by msg‘s connection when a
client certificate is requested during the TLS handshake.
soup_message_set_uri
Sets msg‘s URI to uri.
soup_message_tls_client_certificate_password_request_complete
Completes a certificate password request.
Properties
Soup.Message:first-party
The GUri loaded in the application when the message was queued.
Soup.Message:flags
Various message options.
Soup.Message:http-version
The HTTP protocol version to use.
Soup.Message:is-options-ping
Whether the message is an OPTIONS ping.
Soup.Message:is-top-level-navigation
Set when the message is navigating between top level domains.
Soup.Message:method
The message’s HTTP method.
Soup.Message:priority
Sets the priority of the SoupMessage. See
soup_message_set_priority() for further details.
Soup.Message:reason-phrase
The HTTP response reason phrase.
Soup.Message:remote-address
The remote GSocketAddress of the connection associated
with the message.
Soup.Message:request-headers
The HTTP request headers.
Soup.Message:response-headers
The HTTP response headers.
Soup.Message:site-for-cookies
Site used to compare cookies against. Used for SameSite cookie support.
Soup.Message:status-code
The HTTP response status code.
Soup.Message:tls-ciphersuite-name
The Name of TLS ciphersuite negotiated for this message connection.
Soup.Message:tls-peer-certificate
The peer’s GTlsCertificate associated with the message.
Soup.Message:tls-peer-certificate-errors
The verification errors on SoupMessage:tls-peer-certificate.
Soup.Message:tls-protocol-version
The TLS protocol version negotiated for the message connection.
Soup.Message:uri
The message’s Request-URI.
Signals
Soup.Message::accept-certificate
Emitted during the msg‘s connection TLS handshake
after an unacceptable TLS certificate has been received.
Soup.Message::authenticate
Emitted when the message requires authentication.
Soup.Message::content-sniffed
This signal is emitted after SoupMessage::got-headers.
Soup.Message::finished
Emitted when all HTTP processing is finished for a message.
Soup.Message::got-body
Emitted after receiving the complete message request body.
Soup.Message::got-headers
Emitted after receiving the Status-Line and response headers.
Soup.Message::got-informational
Emitted after receiving a 1xx (Informational) response for a (client-side) message.
Soup.Message::hsts-enforced
Emitted when SoupHSTSEnforcer has upgraded the protocol
for msg to HTTPS as a result of matching its domain with
a HSTS policy.
Soup.Message::network-event
Emitted to indicate that some network-related event
related to msg has occurred.
Soup.Message::request-certificate
Emitted during the msg‘s connection TLS handshake when
tls_connection requests a certificate from the client.
Soup.Message::request-certificate-password
Emitted during the msg‘s connection TLS handshake when
tls_connection requests a certificate password from the client.
Soup.Message::restarted
Emitted when a request that was already sent once is now being sent again.
Soup.Message::starting
Emitted just before a message is sent.
Soup.Message::wrote-body
Emitted immediately after writing the complete body for a message.
Soup.Message::wrote-body-data
Emitted immediately after writing a portion of the message body to the network.
Soup.Message::wrote-headers
Emitted immediately after writing the request headers for a message.
Signals inherited from GObject (1)
GObject.Object::notify
The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.