QWebEngineCookieStore Class
QWebEngineCookieStore クラスは Chromium のクッキーへのアクセスを提供します。詳細...
Header: | #include <QWebEngineCookieStore> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS WebEngineCore) target_link_libraries(mytarget PRIVATE Qt6::WebEngineCore) |
qmake: | QT += webenginecore |
Inherits: | QObject |
パブリック型
struct | FilterRequest |
パブリック関数
virtual | ~QWebEngineCookieStore() |
void | deleteAllCookies() |
void | deleteCookie(const QNetworkCookie &cookie, const QUrl &origin = QUrl()) |
void | deleteSessionCookies() |
void | loadAllCookies() |
void | setCookie(const QNetworkCookie &cookie, const QUrl &origin = QUrl()) |
void | setCookieFilter(const std::function<bool (const FilterRequest &)> &filterCallback) |
void | setCookieFilter(std::function<bool (const FilterRequest &)> &&filterCallback) |
シグナル
void | cookieAdded(const QNetworkCookie &cookie) |
void | cookieRemoved(const QNetworkCookie &cookie) |
詳細な説明
このクラスを使用すると、特定のプロファイルの Chromium の HTTP クッキーにアクセスできます。このクラスは、ChromiumとQNetworkAccessManager のクッキーを同期させたり、ナビゲーション中にクッキーを設定、削除、傍受したりするために使用できます。クッキーの操作は非同期なので、ユーザは操作の成功を通知するコールバック関数を提供することができます。削除と追加のためのシグナル・ハンドラは、ブロッキング接続の場合に IO スレッドをブロックするかもしれないので、重いタスクを実行するために使うべきではありません。
特定のプロファイルのクッキーストア・オブジェクトにアクセスするには、QWebEngineProfile::cookieStore() とQQuickWebEngineProfile::cookieStore() を使用してください。
メンバ関数 ドキュメント
[virtual noexcept]
QWebEngineCookieStore::~QWebEngineCookieStore()
このQWebEngineCookieStore オブジェクトを破棄する。
[signal]
void QWebEngineCookieStore::cookieAdded(const QNetworkCookie &cookie)
このシグナルは、新しいcookie がクッキー・ストアに追加されるたびに発せられます。
[signal]
void QWebEngineCookieStore::cookieRemoved(const QNetworkCookie &cookie)
このシグナルは、cookie がクッキー・ストアから削除されるたびに発せられます。
void QWebEngineCookieStore::deleteAllCookies()
クッキー・ストア内のすべてのクッキーを削除します。
注意: この操作は非同期です。
loadAllCookies()も参照してください 。
void QWebEngineCookieStore::deleteCookie(const QNetworkCookie &cookie, const QUrl &origin = QUrl())
クッキー・ストアからcookie を削除します。削除するクッキーの範囲を限定するために、オプションでorigin URL 引数を与えることが可能です。
注意: この操作は非同期です。
void QWebEngineCookieStore::deleteSessionCookies()
クッキー・ストア内のすべてのセッション・クッキーを削除します。セッション・クッキーには有効期限が割り当てられていません。
注意: この操作は非同期です。
loadAllCookies()も参照してください 。
void QWebEngineCookieStore::loadAllCookies()
すべてのクッキーをクッキー・ストアにロードします。cookieAdded() シグナルはロードされたすべてのクッキーに発せられます。クッキーはストアが初期化されるときに自動的にロードされ、ほとんどの場合、最初の URL をロードするときに起こります。しかし、この関数を呼び出すことは、ウェブ・コンテンツに入る前にクッキーをリストする必要がある場合に便利です。
注意: この操作は非同期です。
void QWebEngineCookieStore::setCookie(const QNetworkCookie &cookie, const QUrl &origin = QUrl())
クッキー・ストアにcookie 。
注意: cookie がドットで始まらないQNetworkCookie::domain()を指定した場合、ドットが自動的に先頭に付加されます。クッキーを正確なサーバに限定するには、QNetworkCookie::domain ()を省略し、代わりにorigin 。
指定するURLにはスキームも含める必要があります。
注意: この操作は非同期です。
void QWebEngineCookieStore::setCookieFilter(const std::function<bool (const FilterRequest &)> &filterCallback)
サイトやリソースがクッキーを使用しないようにするためのクッキー・フィルタをインストールします。filterCallback は、FilterRequest 構造体を取るラムダまたはファンクタでなければなりません。クッキーのアクセスを受け入れる場合、フィルタ関数はtrue
を返すべきです。そうでない場合はfalse
を返すべきです。
次のコード・スニペットはクッキー・フィルタを設定する方法を示しています:
profile->cookieStore()->setCookieFilter( [&allowThirdPartyCookies](const QWebEngineCookieStore::FilterRequest &request) { return !request.thirdParty || allowThirdPartyCookies; } );
nullptr
引数でフィルタを設定解除できます。
このコールバックは IO スレッドで実行されるため、Chromium ネットワーキングをブロックするので、重いタスクの実行には使用しないでください。
IndexedDB 、DOMストレージ、ファイルシステムAPI、サービスワーカー、AppCacheなどです。
deleteAllCookies() およびloadAllCookies()も参照してください 。
void QWebEngineCookieStore::setCookieFilter(std::function<bool (const FilterRequest &)> &&filterCallback)
これはオーバーロードされた関数です。
©2024 The Qt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。