![]() |
![]() |
![]() |
libsoup Reference Manual | ![]() |
---|---|---|---|---|
struct SoupSession; void (*SoupSessionCallback) (SoupSession *session, SoupMessage *msg, gpointer user_data); void soup_session_queue_message (SoupSession *session, SoupMessage *msg, SoupSessionCallback callback, gpointer user_data); void soup_session_requeue_message (SoupSession *session, SoupMessage *msg); guint soup_session_send_message (SoupSession *session, SoupMessage *msg); void soup_session_cancel_message (SoupSession *session, SoupMessage *msg, guint status_code); void soup_session_abort (SoupSession *session); void soup_session_pause_message (SoupSession *session, SoupMessage *msg); void soup_session_unpause_message (SoupSession *session, SoupMessage *msg); GMainContext* soup_session_get_async_context (SoupSession *session); #define SOUP_SESSION_PROXY_URI #define SOUP_SESSION_MAX_CONNS #define SOUP_SESSION_MAX_CONNS_PER_HOST #define SOUP_SESSION_USE_NTLM #define SOUP_SESSION_SSL_CA_FILE #define SOUP_SESSION_ASYNC_CONTEXT #define SOUP_SESSION_TIMEOUT
"async-context" gpointer : Read / Write / Construct Only "max-conns" gint : Read / Write "max-conns-per-host" gint : Read / Write "proxy-uri" SoupURI : Read / Write "ssl-ca-file" gchararray : Read / Write "timeout" guint : Read / Write "use-ntlm" gboolean : Read / Write
void (*SoupSessionCallback) (SoupSession *session, SoupMessage *msg, gpointer user_data);
|
|
|
|
|
void soup_session_queue_message (SoupSession *session, SoupMessage *msg, SoupSessionCallback callback, gpointer user_data);
Queues the message msg
for sending. All messages are processed
while the glib main loop runs. If msg
has been processed before,
any resources related to the time it was last sent are freed.
Upon message completion, the callback specified in callback
will
be invoked (in the thread associated with session
's async
context). If after returning from this callback the message has not
been requeued, msg
will be unreffed.
|
a SoupSession |
|
the message to queue |
|
a SoupSessionCallback which will be called after the message completes or when an unrecoverable error occurs. |
|
a pointer passed to callback .
|
void soup_session_requeue_message (SoupSession *session, SoupMessage *msg);
This causes msg
to be placed back on the queue to be attempted
again.
|
a SoupSession |
|
the message to requeue |
guint soup_session_send_message (SoupSession *session, SoupMessage *msg);
Synchronously send msg
. This call will not return until the
transfer is finished successfully or there is an unrecoverable
error.
msg
is not freed upon return.
|
a SoupSession |
|
the message to send |
Returns : |
the HTTP status code of the response |
void soup_session_cancel_message (SoupSession *session, SoupMessage *msg, guint status_code);
Causes session
to immediately finish processing msg
, with a final
status_code of status_code
. Depending on when you cancel it, the
response state may be incomplete or inconsistent.
|
a SoupSession |
|
the message to cancel |
|
status code to set on msg (generally
SOUP_STATUS_CANCELLED )
|
void soup_session_abort (SoupSession *session);
Cancels all pending requests in session
.
|
the session |
void soup_session_pause_message (SoupSession *session, SoupMessage *msg);
Pauses HTTP I/O on msg
. Call soup_session_unpause_message()
to
resume I/O.
|
a SoupSession |
|
a SoupMessage currently running on session
|
void soup_session_unpause_message (SoupSession *session, SoupMessage *msg);
Resumes HTTP I/O on msg
. Use this to resume after calling
soup_sessino_pause_message()
.
If msg
is being sent via blocking I/O, this will resume reading or
writing immediately. If msg
is using non-blocking I/O, then
reading or writing won't resume until you return to the main loop.
|
a SoupSession |
|
a SoupMessage currently running on session
|
GMainContext* soup_session_get_async_context (SoupSession *session);
Gets session
's async_context. This does not add a ref to the
context, so you will need to ref it yourself if you want it to
outlive its session.
|
a SoupSession |
Returns : |
session 's GMainContext, which may be NULL
|
async-context
" property"async-context" gpointer : Read / Write / Construct Only
The GMainContext to dispatch async I/O in.
max-conns
" property"max-conns" gint : Read / Write
The maximum number of connections that the session can open at once.
Allowed values: >= 1
Default value: 10
max-conns-per-host
" property"max-conns-per-host" gint : Read / Write
The maximum number of connections that the session can open at once to a given host.
Allowed values: >= 1
Default value: 2
ssl-ca-file
" property"ssl-ca-file" gchararray : Read / Write
File containing SSL CA certificates.
Default value: NULL
timeout
" property"timeout" guint : Read / Write
Value in seconds to timeout a blocking I/O.
Default value: 0
use-ntlm
" property"use-ntlm" gboolean : Read / Write
Whether or not to use NTLM authentication.
Default value: FALSE
void user_function (SoupSession *session, SoupMessage *msg, SoupAuth *auth, gboolean retrying, gpointer user_data) : Run First
Emitted when the session requires authentication. If
credentials are available call soup_auth_authenticate()
on
auth
. If these credentials fail, the signal will be
emitted again, with retrying
set to TRUE
, which will
continue until you return without calling
soup_auth_authenticate()
on auth
.
Note that this may be emitted before msg
's body has been
fully read.
If you call soup_session_pause_message()
on msg
before
returning, then you can authenticate auth
asynchronously
(as long as you g_object_ref()
it to make sure it doesn't
get destroyed), and then unpause msg
when you are ready
for it to continue.
|
the session |
|
the SoupMessage being sent |
|
the SoupAuth to authenticate |
|
TRUE if this is the second (or later) attempt
|
|
user data set when the signal handler was connected. |
void user_function (SoupSession *session, SoupMessage *msg, SoupSocket *socket, gpointer user_data) : Run First
Emitted just before a request is sent.
|
the session |
|
the request being sent |
|
the socket the request is being sent on |
|
user data set when the signal handler was connected. |