QWebEngineCookieStore Class
QWebEngineCookieStore クラスは Chromium のクッキーへのアクセスを提供します。詳細...
ヘッダー | #include <QWebEngineCookieStore> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS WebEngineCore) target_link_libraries(mytarget PRIVATE Qt6::WebEngineCore) |
qmake: | QT += webenginecore |
継承: | 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 構造体をとるラムダかファンクタでなければなりません。false
クッキーへのアクセスが受け入れられるなら、フィルタ関数はtrue
を返すべきです。
次のコード・スニペットはクッキー・フィルタを設定する方法を示しています:
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)
これはオーバーロードされた関数である。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.