Skip to main content

CookieSessionView

Struct CookieSessionView 

Source
pub struct CookieSessionView<'a> { /* private fields */ }
Expand description

Cookie-only operations on a PubkySession.

Implementations§

Source§

impl<'a> CookieSessionView<'a>

Source

pub fn session_info(&self) -> CookieSessionRecord

Returns the full cookie session record.

This gives access to cookie-specific fields like created_at and the binary serialization format that are not available via the shared PubkySession::info accessor.

Source

pub fn export(&self) -> String

Export session metadata for rehydrating after a tab refresh or process restart.

The returned string contains no secrets; it is a base64 encoding of the public SessionInfo. The caller remains responsible for persisting the HTTP-only session cookie; export() merely captures the metadata needed to reconstruct a PubkySession handle.

Source

pub fn export_secret(&self) -> Option<String>

Export the minimum data needed to restore this session later. Returns a single compact secret token <pubkey>:<cookie_secret>.

Useful for scripts that need restarting. Helps avoid a new auth flow from a signer on a script restart.

Treat the returned String as a bearer secret. Do not log it; store it securely.

§Returns
  • Some(token) on native and Node.js WASM (the SDK captured the secret from Set-Cookie).
  • None on browser WASM, where Set-Cookie is hidden from JavaScript by the WHATWG fetch spec — only the browser cookie jar holds the value.
Source

pub fn write_secret_file<P: AsRef<Path>>( &self, secret_file_path: P, ) -> Result<()>

Write the session secret token to disk. Ensures a .sess extension. Native-only — depends on the standard filesystem APIs.

Behavior:

  • If secret_file_path already ends with .sess, it is used as-is.
  • If it has no extension, .sess is added.
  • If it has a different extension, the filename gains .sess (e.g., foo.txt -> foo.sess).

On Unix, permissions are set to 0o600.

§Errors
  • Returns std::io::Error if the file cannot be written or permissions cannot be set. On native the secret is always present, so this never errors with NotFound for that reason.

Trait Implementations§

Source§

impl<'a> Debug for CookieSessionView<'a>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'a> !RefUnwindSafe for CookieSessionView<'a>

§

impl<'a> !UnwindSafe for CookieSessionView<'a>

§

impl<'a> Freeze for CookieSessionView<'a>

§

impl<'a> Send for CookieSessionView<'a>

§

impl<'a> Sync for CookieSessionView<'a>

§

impl<'a> Unpin for CookieSessionView<'a>

§

impl<'a> UnsafeUnpin for CookieSessionView<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CompatExt for T

Source§

fn compat(self) -> Compat<T>
where T: Sized,

Applies the Compat adapter by value. Read more
Source§

fn compat_ref(&self) -> Compat<&T>

Applies the Compat adapter by shared reference. Read more
Source§

fn compat_mut(&mut self) -> Compat<&mut T>

Applies the Compat adapter by mutable reference. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more