Copyright | Will Thompson and Iñaki García Etxebarria |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
HTTP client-side authentication handler.
AuthManager
is the [ifacesessionFeature
] that handles HTTP
authentication for a [classsession
].
A AuthManager
is added to the session by default, and normally
you don't need to worry about it at all. However, if you want to
disable HTTP authentication, you can remove the feature from the
session with [methodsession
.remove_feature_by_type] or disable it on
individual requests with [methodmessage
.disable_feature].
You can use this with [methodsession
.remove_feature_by_type] or
[methodmessage
.disable_feature].
(Although this type has only been publicly visible since libsoup 2.42, it has
always existed in the background, and you can use g_type_from_name
("SoupAuthManager")
to get its [aliasgLib
.Type] in earlier releases.)
Synopsis
- newtype AuthManager = AuthManager (ManagedPtr AuthManager)
- class (GObject o, IsDescendantOf AuthManager o) => IsAuthManager o
- toAuthManager :: (MonadIO m, IsAuthManager o) => o -> m AuthManager
- authManagerClearCachedCredentials :: (HasCallStack, MonadIO m, IsAuthManager a) => a -> m ()
- authManagerUseAuth :: (HasCallStack, MonadIO m, IsAuthManager a, IsAuth b) => a -> Uri -> b -> m ()
Exported types
newtype AuthManager Source #
Memory-managed wrapper type.
AuthManager (ManagedPtr AuthManager) |
Instances
Eq AuthManager Source # | |
Defined in GI.Soup.Objects.AuthManager (==) :: AuthManager -> AuthManager -> Bool # (/=) :: AuthManager -> AuthManager -> Bool # | |
GObject AuthManager Source # | |
Defined in GI.Soup.Objects.AuthManager | |
ManagedPtrNewtype AuthManager Source # | |
Defined in GI.Soup.Objects.AuthManager toManagedPtr :: AuthManager -> ManagedPtr AuthManager | |
TypedObject AuthManager Source # | |
Defined in GI.Soup.Objects.AuthManager | |
HasParentTypes AuthManager Source # | |
Defined in GI.Soup.Objects.AuthManager | |
IsGValue (Maybe AuthManager) Source # | Convert |
Defined in GI.Soup.Objects.AuthManager gvalueGType_ :: IO GType gvalueSet_ :: Ptr GValue -> Maybe AuthManager -> IO () gvalueGet_ :: Ptr GValue -> IO (Maybe AuthManager) | |
type ParentTypes AuthManager Source # | |
Defined in GI.Soup.Objects.AuthManager |
class (GObject o, IsDescendantOf AuthManager o) => IsAuthManager o Source #
Type class for types which can be safely cast to AuthManager
, for instance with toAuthManager
.
Instances
(GObject o, IsDescendantOf AuthManager o) => IsAuthManager o Source # | |
Defined in GI.Soup.Objects.AuthManager |
toAuthManager :: (MonadIO m, IsAuthManager o) => o -> m AuthManager Source #
Cast to AuthManager
, for types for which this is known to be safe. For general casts, use castTo
.
Methods
Click to display all available methods, including inherited ones
Methods
bindProperty, bindPropertyFull, clearCachedCredentials, forceFloating, freezeNotify, getv, isFloating, notify, notifyByPspec, ref, refSink, runDispose, stealData, stealQdata, thawNotify, unref, useAuth, watchClosure.
Getters
getData, getProperty, getQdata.
Setters
clearCachedCredentials
authManagerClearCachedCredentials Source #
:: (HasCallStack, MonadIO m, IsAuthManager a) | |
=> a |
|
-> m () |
Clear all credentials cached by manager
.
useAuth
:: (HasCallStack, MonadIO m, IsAuthManager a, IsAuth b) | |
=> a |
|
-> Uri |
|
-> b |
|
-> m () |
Records that auth
is to be used under uri
, as though a
WWW-Authenticate header had been received at that URI.
This can be used to "preload" manager
's auth cache, to avoid an extra HTTP
round trip in the case where you know ahead of time that a 401 response will
be returned.
This is only useful for authentication types where the initial Authorization header does not depend on any additional information from the server. (Eg, Basic or NTLM, but not Digest.)