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 쿠키에 액세스할 수 있습니다. 이 클래스는 크롬과 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)

사이트 및 리소스의 쿠키 사용을 차단할 수 있는 쿠키 필터를 설치합니다. filterCallbackFilterRequest 구조를 취하는 람다 또는 함수여야 합니다. 쿠키 액세스를 허용하려면 필터 함수는 true 을 반환해야 하며, 그렇지 않으면 false 을 반환해야 합니다.

다음 코드 스니펫은 쿠키 필터를 설정하는 방법을 보여줍니다:

profile->cookieStore()->setCookieFilter(
    [&allowThirdPartyCookies](const QWebEngineCookieStore::FilterRequest &request)
    { return !request.thirdParty || allowThirdPartyCookies; }
);

nullptr 인수를 사용하여 필터를 설정 해제할 수 있습니다.

콜백은 IO 스레드에서 실행되므로 Chromium 네트워킹을 차단하므로 무거운 작업을 실행하는 데 사용해서는 안 됩니다.

참고: 쿠키 필터는 쿠키와 유사한 추적 기능을 가진 다른 기능(인덱싱된DB, 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.