diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-web.md b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-web.md index bb5fbdb89522cbb4cb36f76d56afb4560c8cb95a..818d42f1b493564be1f383859d8246a6d5741f59 100644 --- a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-web.md +++ b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-web.md @@ -18,14 +18,15 @@ Web(options: { src: ResourceStr, controller: WebController }) -表1 options参数说明 **参数:** -| 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | -| ---------- | ------------------------------- | ---- | ---- | ------- | -| src | [ResourceStr](../../ui/ts-types.md) | 是 | - | 网页资源地址。 | -| controller | [WebController](#webcontroller) | 否 | - | 控制器。 | + +| 参数名 | 参数类型 | 必填 | 参数描述 | +| ---------- | ------------------------------- | ---- | ------- | +| src | [ResourceStr](../../ui/ts-types.md) | 是 | 网页资源地址。 | +| controller | [WebController](#webcontroller) | 否 | 控制器。 | **示例:** + ```ts // xxx.ets @Entry @@ -55,11 +56,13 @@ domStorageAccess(domStorageAccess: boolean) 设置是否开启文档对象模型存储接口(DOM Storage API)权限,默认未开启。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ---------------- | ------- | ---- | ---- | ------------------------------------ | | domStorageAccess | boolean | 是 | false | 设置是否开启文档对象模型存储接口(DOM Storage API)权限。 | **示例:** + ```ts // xxx.ets @Entry @@ -82,11 +85,13 @@ fileAccess(fileAccess: boolean) 设置是否开启应用中文件系统的访问,默认启用。[$rawfile(filepath/filename)](../../ui/ts-resource-access.md)中rawfile路径的文件不受该属性影响而限制访问。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ---------- | ------- | ---- | ---- | ---------------------------------------- | | fileAccess | boolean | 是 | true | 设置是否开启应用中文件系统的访问,默认启用。 | **示例:** + ```ts // xxx.ets @Entry @@ -109,11 +114,13 @@ fileFromUrlAccess(fileFromUrlAccess: boolean) 设置是否允许通过网页中的JavaScript脚本访问应用文件系统中的内容,默认未启用。[$rawfile(filepath/filename)](../../ui/ts-resource-access.md)中rawfile路径的文件不受该属性影响而限制访问。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ----------------- | ------- | ---- | ----- | ---------------------------------------- | | fileFromUrlAccess | boolean | 是 | false | 设置是否允许通过网页中的JavaScript脚本访问应用文件系统中的内容,默认未启用。 | **示例:** + ```ts // xxx.ets @Entry @@ -136,6 +143,7 @@ imageAccess(imageAccess: boolean) 设置是否允许自动加载图片资源,默认允许。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ----------- | ------- | ---- | ---- | --------------- | | imageAccess | boolean | 是 | true | 设置是否允许自动加载图片资源。 | @@ -164,6 +172,7 @@ javaScriptProxy(javaScriptProxy: { object: object, name: string, methodList: Arr 注入JavaScript对象到window对象中,并在window对象中调用该对象的方法。所有参数不支持更新。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ---------- | --------------- | ---- | ---- | ------------------------- | | object | object | 是 | - | 参与注册的对象。只能声明方法,不能声明属性。 | @@ -172,6 +181,7 @@ javaScriptProxy(javaScriptProxy: { object: object, name: string, methodList: Arr | controller | [WebController](#webcontroller) | 否 | - | 控制器。 | **示例:** + ```ts // xxx.ets @Entry @@ -211,11 +221,13 @@ javaScriptAccess(javaScriptAccess: boolean) 设置是否允许执行JavaScript脚本,默认允许执行。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ---------------- | ------- | ---- | ---- | ------------------- | | javaScriptAccess | boolean | 是 | true | 是否允许执行JavaScript脚本。 | **示例:** + ```ts // xxx.ets @Entry @@ -238,11 +250,13 @@ mixedMode(mixedMode: MixedMode) 设置是否允许加载超文本传输协议(HTTP)和超文本传输安全协议(HTTPS)混合内容,默认不允许加载HTTP和HTTPS混合内容。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | --------- | --------------------------- | ---- | ---- | --------- | | mixedMode | [MixedMode](#mixedmode枚举说明) | 是 | MixedMode.None | 要设置的混合内容。 | **示例:** + ```ts // xxx.ets @Entry @@ -266,11 +280,13 @@ onlineImageAccess(onlineImageAccess: boolean) 设置是否允许从网络加载图片资源(通过HTTP和HTTPS访问的资源),默认允许访问。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ----------------- | ------- | ---- | ---- | ---------------- | | onlineImageAccess | boolean | 是 | true | 设置是否允许从网络加载图片资源。 | **示例:** + ```ts // xxx.ets @Entry @@ -293,11 +309,13 @@ zoomAccess(zoomAccess: boolean) 设置是否支持手势进行缩放,默认允许执行缩放。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ---------- | ------- | ---- | ---- | ------------- | | zoomAccess | boolean | 是 | true | 设置是否支持手势进行缩放。 | **示例:** + ```ts // xxx.ets @Entry @@ -320,11 +338,13 @@ overviewModeAccess(overviewModeAccess: boolean) 设置是否使用概览模式加载网页,默认使用该方式。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ------------------ | ------- | ---- | ---- | --------------- | | overviewModeAccess | boolean | 是 | true | 设置是否使用概览模式加载网页。 | **示例:** + ```ts // xxx.ets @Entry @@ -347,11 +367,13 @@ databaseAccess(databaseAccess: boolean) 设置是否开启数据库存储API权限,默认不开启。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | -------------- | ------- | ---- | ---- | ----------------- | | databaseAccess | boolean | 是 | false | 设置是否开启数据库存储API权限。 | **示例:** + ```ts // xxx.ets @Entry @@ -374,11 +396,13 @@ geolocationAccess(geolocationAccess: boolean) 设置是否开启获取地理位置权限,默认开启。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | -------------- | ------- | ---- | ---- | ----------------- | | geolocationAccess | boolean | 是 | true | 设置是否开启获取地理位置权限。 | **示例:** + ```ts // xxx.ets @Entry @@ -394,6 +418,36 @@ geolocationAccess(geolocationAccess: boolean) } ``` +### mediaPlayGestureAccess + +mediaPlayGestureAccess(access: boolean) + +设置视频播放是否需要用户手动点击。 + +**参数:** + +| 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | +| --------- | ------ | ---- | ---- | --------- | +| access | boolean | 是 | true | 设置视频播放是否需要用户手动点击。 | + +**示例:** + + ```ts + // xxx.ets + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + @State access: boolean = true; + build() { + Column() { + Web({ src: 'www.example.com', controller: this.controller }) + .mediaPlayGestureAccess(this.access) + } + } + } + ``` + ### cacheMode cacheMode(cacheMode: CacheMode) @@ -401,11 +455,13 @@ cacheMode(cacheMode: CacheMode) 设置缓存模式。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | --------- | --------------------------- | ---- | ---- | --------- | | cacheMode | [CacheMode](#cachemode枚举说明) | 是 | CacheMode.Default | 要设置的缓存模式。 | **示例:** + ```ts // xxx.ets @Entry @@ -429,11 +485,13 @@ textZoomRatio(textZoomRatio: number) 设置页面的文本缩放百分比,默认为100%。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ------------ | ------ | ---- | ---- | --------------- | | textZoomRatio | number | 是 | 100 | 要设置的页面的文本缩放百分比。 | **示例:** + ```ts // xxx.ets @Entry @@ -457,11 +515,13 @@ userAgent(userAgent: string) 设置用户代理。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | --------- | ------ | ---- | ---- | --------- | | userAgent | string | 是 | - | 要设置的用户代理。 | **示例:** + ```ts // xxx.ets @Entry @@ -493,6 +553,7 @@ onAlert(callback: (event?: { url: string; message: string; result: JsResult }) = 网页触发alert()告警弹窗时触发回调。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ------- | --------------------- | --------------- | | url | string | 当前显示弹窗所在网页的URL。 | @@ -500,11 +561,13 @@ onAlert(callback: (event?: { url: string; message: string; result: JsResult }) = | result | [JsResult](#jsresult) | 通知Web组件用户操作行为。 | **返回值:** + | 类型 | 说明 | | ------- | ---------------------------------------- | | boolean | 当回调返回false时,触发默认弹窗。当回调返回true时,系统应用可以调用系统弹窗能力(包括确认和取消),并且需要根据用户的确认或取消操作调用JsResult通知Web组件最终是否离开当前页面。 | **示例:** + ```ts // xxx.ets @Entry @@ -542,6 +605,7 @@ onBeforeUnload(callback: (event?: { url: string; message: string; result: JsResu 刷新或关闭场景下,在即将离开当前页面时触发此回调。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ------- | --------------------- | --------------- | | url | string | 当前显示弹窗所在网页的URL。 | @@ -549,11 +613,13 @@ onBeforeUnload(callback: (event?: { url: string; message: string; result: JsResu | result | [JsResult](#jsresult) | 通知Web组件用户操作行为。 | **返回值:** + | 类型 | 说明 | | ------- | ---------------------------------------- | | boolean | 当回调返回false时,触发默认弹窗。当回调返回true时,系统应用可以调用系统弹窗能力(包括确认和取消),并且需要根据用户的确认或取消操作调用JsResult通知Web组件最终是否离开当前页面。 | **示例:** + ```ts // xxx.ets @Entry @@ -582,6 +648,7 @@ onConfirm(callback: (event?: { url: string; message: string; result: JsResult }) 网页调用confirm()告警时触发此回调。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ------- | --------------------- | --------------- | | url | string | 当前显示弹窗所在网页的URL。 | @@ -589,11 +656,13 @@ onConfirm(callback: (event?: { url: string; message: string; result: JsResult }) | result | [JsResult](#jsresult) | 通知Web组件用户操作行为。 | **返回值:** + | 类型 | 说明 | | ------- | ---------------------------------------- | | boolean | 当回调返回false时,触发默认弹窗。当回调返回true时,系统应用可以调用系统弹窗能力(包括确认和取消),并且需要根据用户的确认或取消操作调用JsResult通知Web组件。 | **示例:** + ```ts // xxx.ets @Entry @@ -633,6 +702,7 @@ onConfirm(callback: (event?: { url: string; message: string; result: JsResult }) onPrompt(callback: (event?: { url: string; message: string; value: string; result: JsResult }) => boolean) **参数:** + | 参数名 | 参数类型 | 参数描述 | | ------- | --------------------- | --------------- | | url | string | 当前显示弹窗所在网页的URL。 | @@ -640,11 +710,13 @@ onPrompt(callback: (event?: { url: string; message: string; value: string; resul | result | [JsResult](#jsresult) | 通知Web组件用户操作行为。 | **返回值:** + | 类型 | 说明 | | ------- | ---------------------------------------- | | boolean | 当回调返回false时,触发默认弹窗。当回调返回true时,系统应用可以调用系统弹窗能力(包括确认和取消),并且需要根据用户的确认或取消操作调用JsResult通知Web组件。 | **示例:** + ```ts // xxx.ets @Entry @@ -672,16 +744,19 @@ onConsole(callback: (event?: { message: ConsoleMessage }) => boolean) 通知宿主应用JavaScript console消息。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ------- | --------------------------------- | --------- | | message | [ConsoleMessage](#consolemessage) | 触发的控制台信息。 | **返回值:** + | 类型 | 说明 | | ------- | ----------------------------------- | | boolean | 当返回true时,该条消息将不会再打印至控制台,反之仍会打印至控制台。 | **示例:** + ```ts // xxx.ets @Entry @@ -709,6 +784,7 @@ onConsole(callback: (event?: { message: ConsoleMessage }) => boolean) onDownloadStart(callback: (event?: { url: string, userAgent: string, contentDisposition: string, mimetype: string, contentLength: number }) => void) **参数:** + | 参数名 | 参数类型 | 参数描述 | | ------------------ | ------------- | ----------------------------------- | | url | string | 文件下载的URL。 | @@ -717,6 +793,7 @@ onDownloadStart(callback: (event?: { url: string, userAgent: string, contentDisp | contentLength | contentLength | 服务器返回文件的长度。 | **示例:** + ```ts // xxx.ets @Entry @@ -746,12 +823,14 @@ onErrorReceive(callback: (event?: { request: WebResourceRequest, error: WebResou 网页加载遇到错误时触发该回调。出于性能考虑,建议此回调中尽量执行简单逻辑。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ------- | ---------------------------------------- | --------------- | | request | [WebResourceRequest](#webresourcerequest) | 网页请求的封装信息。 | | error | [WebResourceError](#webresourceerror) | 网页加载资源错误的封装信息 。 | **示例:** + ```ts // xxx.ets @Entry @@ -788,12 +867,14 @@ onHttpErrorReceive(callback: (event?: { request: WebResourceRequest, response: W 网页加载资源遇到的HTTP错误(响应码>=400)时触发该回调。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ------- | ---------------------------------------- | --------------- | | request | [WebResourceRequest](#webresourcerequest) | 网页请求的封装信息。 | | error | [WebResourceError](#webresourceerror) | 网页加载资源错误的封装信息 。 | **示例:** + ```ts // xxx.ets @Entry @@ -838,11 +919,13 @@ onPageBegin(callback: (event?: { url: string }) => void) 网页开始加载时触发该回调,且只在主frame触发,iframe或者frameset的内容加载时不会触发此回调。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ---- | ------ | --------- | | url | string | 页面的URL地址。 | **示例:** + ```ts // xxx.ets @Entry @@ -869,11 +952,13 @@ onPageEnd(callback: (event?: { url: string }) => void) 网页加载完成时触发该回调,且只在主frame触发。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ---- | ------ | --------- | | url | string | 页面的URL地址。 | **示例:** + ```ts // xxx.ets @Entry @@ -899,11 +984,13 @@ onProgressChange(callback: (event?: { newProgress: number }) => void) 网页加载进度变化时触发该回调。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ----------- | ------ | --------------------- | | newProgress | number | 新的加载进度,取值范围为0到100的整数。 | - **示例:** +**示例:** + ```ts // xxx.ets @Entry @@ -929,11 +1016,13 @@ onTitleReceive(callback: (event?: { title: string }) => void) 网页document标题更改时触发该回调。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ----- | ------ | ------------- | | title | string | document标题内容。 | - **示例:** +**示例:** + ```ts // xxx.ets @Entry @@ -959,12 +1048,14 @@ onRefreshAccessedHistory(callback: (event?: { url: string, isRefreshed: boolean 加载网页页面完成时触发该回调,用于应用更新其访问的历史链接。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ----------- | ------- | --------------------------------- | | url | string | 访问的url。 | | isRefreshed | boolean | true表示该页面是被重新加载的,false表示该页面是新加载的。 | - **示例:** +**示例:** + ```ts // xxx.ets @Entry @@ -990,11 +1081,13 @@ onRenderExited(callback: (event?: { renderExitReason: RenderExitReason }) => voi 应用渲染进程异常退出时触发该回调。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ---------------- | ---------------------------------------- | ---------------- | | renderExitReason | [RenderExitReason](#renderexitreason枚举说明) | 渲染进程进程异常退出的具体原因。 | - **示例:** +**示例:** + ```ts // xxx.ets @Entry @@ -1020,12 +1113,14 @@ onShowFileSelector(callback: (event?: { result: FileSelectorResult, fileSelector 调用此函数以处理具有“文件”输入类型的HTML表单,以响应用户按下的“选择文件”按钮。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ------------ | ---------------------------------------- | ----------------- | | result | [FileSelectorResult](#fileselectorresult9) | 用于通知Web组件文件选择的结果。 | | fileSelector | [FileSelectorParam](#fileselectorparam9) | 文件选择器的相关信息。 | - **示例:** +**示例:** + ```ts // xxx.ets @Entry @@ -1068,16 +1163,19 @@ onUrlLoadIntercept(callback: (event?: { data:string | WebResourceRequest }) => b 当Web组件加载url之前触发该回调,用于是否阻止此次访问。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ---- | ---------------------------------------- | --------- | | data | string / [WebResourceRequest](#webresourcerequest) | url的相关信息。 | **返回值:** + | 类型 | 说明 | | ------- | ------------------------ | | boolean | 返回true表示阻止此次加载,否则允许此次加载。 | - **示例:** +**示例:** + ```ts // xxx.ets @Entry @@ -1104,16 +1202,19 @@ onInterceptRequest9+(callback: (event?: { request: WebResourceRequest}) => WebRe 当Web组件加载url之前触发该回调,用于拦截url并返回响应数据。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ------- | ---------------------------------------- | ----------- | | request | [WebResourceRequest](#webresourcerequest) | url请求的相关信息。 | **返回值:** + | 类型 | 说明 | | ---------------------------------------- | --------------------------- | | [WebResourceResponse](#webresourceresponse) | 返回响应数据为空表示按原来方式加载,否则加载响应数据。 | - **示例:** +**示例:** + ```ts // xxx.ets @Entry @@ -1166,6 +1267,7 @@ onHttpAuthRequest(callback: (event?: { handler: HttpAuthHandler, host: string, r 通知收到http auth认证请求。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ------- | ------------------------------------ | ---------------- | | handler | [HttpAuthHandler](#httpauthhandler9) | 通知Web组件用户操作行为。 | @@ -1173,11 +1275,13 @@ onHttpAuthRequest(callback: (event?: { handler: HttpAuthHandler, host: string, r | realm | string | HTTP身份验证凭据应用的域。 | **返回值:** + | 类型 | 说明 | | ------- | --------------------- | | boolean | 返回false表示此次认证失败,否则成功。 | - **示例:** +**示例:** + ```ts // xxx.ets @Entry @@ -1225,11 +1329,13 @@ onPermissionRequest(callback: (event?: { request: PermissionRequest }) => void) 通知收到获取权限请求。 **参数:** + | 参数名 | 参数类型 | 参数描述 | | ------- | ------------------------------------ | ---------------- | | request | [PermissionRequest](#permissionrequest9) | 通知Web组件用户操作行为。 | - **示例:** +**示例:** + ```ts // xxx.ets @Entry @@ -1278,7 +1384,7 @@ onContextMenuShow(callback: (event?: { param: WebContextMenuParam, result: WebCo | ------ | -------------------- | | boolean | 自定义菜单返回true,默认菜单返回false。 | - **示例:** +**示例:** ```ts // xxx.ets @@ -1298,6 +1404,39 @@ onContextMenuShow(callback: (event?: { param: WebContextMenuParam, result: WebCo } ``` +### onScroll9+ + +onScroll(callback: (event: {xOffset: number, yOffset: number}) => void) + +通知网页滚动条滚动位置。 + +**参数:** + +| 参数名 | 参数类型 | 参数描述 | +| ------- | ------------------------------------ | ---------------- | +| xOffset | number | 水平滚动条滚动所在位置。 | +| yOffset | number | 竖直滚动条滚动所在位置。 | + +**示例:** + + ```ts + // xxx.ets + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + build() { + Column() { + Web({ src: 'www.example.com', controller: this.controller }) + .onScroll((event) => { + console.info("x = " + event.xOffset); + console.info("y = " + event.yOffset); + }) + } + } + } + ``` + ### onGeolocationShow onGeolocationShow(callback: (event?: { origin: string, geolocation: JsGeolocation }) => void) @@ -1354,6 +1493,7 @@ getLineNumber(): number 获取ConsoleMessage的行数。 **返回值:** + | 类型 | 说明 | | ------ | -------------------- | | number | 返回ConsoleMessage的行数。 | @@ -1365,6 +1505,7 @@ getMessage(): string 获取ConsoleMessage的日志信息。 **返回值:** + | 类型 | 说明 | | ------ | ---------------------- | | string | 返回ConsoleMessage的日志信息。 | @@ -1376,6 +1517,7 @@ getMessageLevel(): MessageLevel 获取ConsoleMessage的信息级别。 **返回值:** + | 类型 | 说明 | | --------------------------------- | ---------------------- | | [MessageLevel](#messagelevel枚举说明) | 返回ConsoleMessage的信息级别。 | @@ -1387,6 +1529,7 @@ getSourceId(): string 获取网页源文件路径和名字。 **返回值:** + | 类型 | 说明 | | ------ | ------------- | | string | 返回网页源文件路径和名字。 | @@ -1414,6 +1557,7 @@ handlePromptConfirm(result: string): void 通知Web组件用户确认弹窗操作及对话框内容。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ------ | ------ | ---- | ---- | ----------- | | result | string | 是 | - | 用户输入的对话框内容。 | @@ -1429,6 +1573,7 @@ getErrorCode(): number 获取加载资源的错误码。 **返回值:** + | 类型 | 说明 | | ------ | ----------- | | number | 返回加载资源的错误码。 | @@ -1440,6 +1585,7 @@ getErrorInfo(): string 获取加载资源的错误信息。 **返回值:** + | 类型 | 说明 | | ------ | ------------ | | string | 返回加载资源的错误信息。 | @@ -1455,6 +1601,7 @@ getResponseHeader() : Array\ 获取资源请求头信息。 **返回值:** + | 类型 | 说明 | | -------------------------- | ---------- | | Array\<[Header](#header)\> | 返回资源请求头信息。 | @@ -1466,6 +1613,7 @@ getRequestUrl(): string 获取资源请求的URL信息。 **返回值:** + | 类型 | 说明 | | ------ | ------------- | | string | 返回资源请求的URL信息。 | @@ -1477,6 +1625,7 @@ isMainFrame(): boolean 判断资源请求是否为主frame。 **返回值:** + | 类型 | 说明 | | ------- | ---------------- | | boolean | 返回资源请求是否为主frame。 | @@ -1488,6 +1637,7 @@ isRedirect(): boolean 判断资源请求是否被服务端重定向。 **返回值:** + | 类型 | 说明 | | ------- | ---------------- | | boolean | 返回资源请求是否被服务端重定向。 | @@ -1499,6 +1649,7 @@ isRequestGesture(): boolean 获取资源请求是否与手势(如点击)相关联。 **返回值:** + | 类型 | 说明 | | ------- | -------------------- | | boolean | 返回资源请求是否与手势(如点击)相关联。 | @@ -1524,6 +1675,7 @@ getReasonMessage(): string 获取资源响应的状态码描述。 **返回值:** + | 类型 | 说明 | | ------ | ------------- | | string | 返回资源响应的状态码描述。 | @@ -1535,6 +1687,7 @@ getResponseCode(): number 获取资源响应的状态码。 **返回值:** + | 类型 | 说明 | | ------ | ----------- | | number | 返回资源响应的状态码。 | @@ -1546,6 +1699,7 @@ getResponseData(): string 获取资源响应数据。 **返回值:** + | 类型 | 说明 | | ------ | --------- | | string | 返回资源响应数据。 | @@ -1557,6 +1711,7 @@ getResponseEncoding(): string 获取资源响应的编码。 **返回值:** + | 类型 | 说明 | | ------ | ---------- | | string | 返回资源响应的编码。 | @@ -1568,6 +1723,7 @@ getResponseHeader() : Array\ 获取资源响应头。 **返回值:** + | 类型 | 说明 | | -------------------------- | -------- | | Array\<[Header](#header)\> | 返回资源响应头。 | @@ -1579,6 +1735,7 @@ getResponseMimeType(): string 获取资源响应的媒体(MIME)类型。 **返回值:** + | 类型 | 说明 | | ------ | ------------------ | | string | 返回资源响应的媒体(MIME)类型。 | @@ -1590,6 +1747,7 @@ setResponseData(data: string) 设置资源响应数据。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ---- | ------ | ---- | ---- | ----------- | | data | string | 是 | - | 要设置的资源响应数据。 | @@ -1601,6 +1759,7 @@ setResponseEncoding(encoding: string) 设置资源响应的编码。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | -------- | ------ | ---- | ---- | ------------ | | encoding | string | 是 | - | 要设置的资源响应的编码。 | @@ -1612,6 +1771,7 @@ setResponseMimeType(mimeType: string) 设置资源响应的媒体(MIME)类型。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | -------- | ------ | ---- | ---- | -------------------- | | mimeType | string | 是 | - | 要设置的资源响应的媒体(MIME)类型。 | @@ -1623,6 +1783,7 @@ setReasonMessage(reason: string) 设置资源响应的状态码描述。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ------ | ------ | ---- | ---- | --------------- | | reason | string | 是 | - | 要设置的资源响应的状态码描述。 | @@ -1634,6 +1795,7 @@ setResponseHeader(header: Array\) 设置资源响应头。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ------ | -------------------------- | ---- | ---- | ---------- | | header | Array\<[Header](#header)\> | 是 | - | 要设置的资源响应头。 | @@ -1645,6 +1807,7 @@ setResponseCode(code: number) 设置资源响应的状态码。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ---- | ------ | ---- | ---- | ------------- | | code | number | 是 | - | 要设置的资源响应的状态码。 | @@ -1660,6 +1823,7 @@ handleFileList(fileList: Array\): void 通知Web组件进行文件选择操作。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | -------- | --------------- | ---- | ---- | ------------ | | fileList | Array\ | 是 | - | 需要进行操作的文件列表。 | @@ -1675,6 +1839,7 @@ getTitle(): string 获取文件选择器标题。 **返回值:** + | 类型 | 说明 | | ------ | ---------- | | string | 返回文件选择器标题。 | @@ -1686,6 +1851,7 @@ getMode(): FileSelectorMode 获取文件选择器的模式。 **返回值:** + | 类型 | 说明 | | ---------------------------------------- | ----------- | | [FileSelectorMode](#fileselectormode枚举说明) | 返回文件选择器的模式。 | @@ -1697,6 +1863,7 @@ getAcceptType(): Array\ 获取文件过滤类型。 **返回值:** + | 类型 | 说明 | | --------------- | --------- | | Array\ | 返回文件过滤类型。 | @@ -1708,6 +1875,7 @@ isCapture(): boolean 获取是否调用多媒体能力。 **返回值:** + | 类型 | 说明 | | ------- | ------------ | | boolean | 返回是否调用多媒体能力。 | @@ -1736,6 +1904,7 @@ confirm(userName: string, pwd: string): boolean | pwd | string | 是 | - | HTTP认证密码。 | **返回值:** + | 类型 | 说明 | | ------- | --------------------- | | boolean | 认证成功返回true,失败返回false。 | @@ -1747,6 +1916,7 @@ isHttpAuthInfoSaved(): boolean 通知Web组件用户使用服务器缓存的账号密码认证。 **返回值:** + | 类型 | 说明 | | ------- | ------------------------- | | boolean | 存在密码认证成功返回true,其他返回false。 | @@ -1924,6 +2094,7 @@ requestFocus() 使当前web页面获取焦点。 **示例:** + ```ts // xxx.ets @Entry @@ -1950,11 +2121,13 @@ accessBackward(): boolean 当前页面是否可后退,即当前页面是否有返回历史记录。 **返回值:** + | 类型 | 说明 | | ------- | --------------------- | | boolean | 可以后退返回true,否则返回false。 | **示例:** + ```ts // xxx.ets @Entry @@ -1982,11 +2155,13 @@ accessForward(): boolean 当前页面是否可前进,即当前页面是否有前进历史记录。 **返回值:** + | 类型 | 说明 | | ------- | --------------------- | | boolean | 可以前进返回true,否则返回false。 | **示例:** + ```ts // xxx.ets @Entry @@ -2020,11 +2195,13 @@ accessStep(step: number): boolean | step | number | 是 | - | 要跳转的步数,正数代表前进,负数代表后退。 | **返回值:** + | 类型 | 说明 | | ------- | --------- | | boolean | 页面是否前进或后退 | **示例:** + ```ts // xxx.ets @Entry @@ -2053,6 +2230,7 @@ backward(): void 按照历史栈,后退一个页面。一般结合accessBackward一起使用。 **示例:** + ```ts // xxx.ets @Entry @@ -2079,6 +2257,7 @@ forward(): void 按照历史栈,前进一个页面。一般结合accessForward一起使用。 **示例:** + ```ts // xxx.ets @Entry @@ -2105,11 +2284,13 @@ backOrForward(step: number): void 按照历史栈,前进或者后退指定步长的页面,当历史栈中不存在对应步长的页面时,不会进行页面跳转。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ---- | ------ | ---- | ---- | ----------- | | step | number | 是 | - | 需要前进或后退的步长。 | **示例:** + ```ts // xxx.ets @Entry @@ -2134,11 +2315,13 @@ deleteJavaScriptRegister(name: string) 删除通过registerJavaScriptProxy注册到window上的指定name的应用侧JavaScript对象。删除后立即生效,无须调用[refresh](#refresh)接口。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ---- | ------ | ---- | ---- | ---------------------------------------- | | name | string | 是 | - | 注册对象的名称,可在网页侧JavaScript中通过此名称调用应用侧JavaScript对象。 | **示例:** + ```ts // xxx.ets @Entry @@ -2166,11 +2349,13 @@ getHitTest(): HitTestType 获取当前被点击区域的元素类型。 **返回值:** + | 类型 | 说明 | | ------------------------------- | ----------- | | [HitTestType](#hittesttype枚举说明) | 被点击区域的元素类型。 | **示例:** + ```ts // xxx.ets @Entry @@ -2197,11 +2382,13 @@ getHitTestValue(): HitTestValue 获取当前被点击区域的元素信息。 **返回值:** + | 类型 | 说明 | | ------------------------------ | ---------- | | [HitTestValue](#hittestvalue9) | 点击区域的元素信息。 | **示例:** + ```ts // xxx.ets @Entry @@ -2229,11 +2416,13 @@ getWebId(): number 获取当前Web组件的索引值,用于多个Web组件的管理。 **返回值:** + | 类型 | 说明 | | ------ | ------------ | | number | 当前Web组件的索引值。 | **示例:** + ```ts // xxx.ets @Entry @@ -2260,11 +2449,13 @@ getTitle(): string 获取当前网页的标题。 **返回值:** + | 类型 | 说明 | | ------ | -------- | | string | 当前网页的标题。 | **示例:** + ```ts // xxx.ets @Entry @@ -2291,11 +2482,13 @@ getPageHeight(): number 获取当前网页的页面高度。 **返回值:** + | 类型 | 说明 | | ------ | ---------- | | number | 当前网页的页面高度。 | **示例:** + ```ts // xxx.ets @Entry @@ -2322,11 +2515,13 @@ getDefaultUserAgent(): string 获取当前默认用户代理。 **返回值:** + | 类型 | 说明 | | ------ | ------- | | string | 默认用户代理。 | **示例:** + ```ts // xxx.ets @Entry @@ -2358,6 +2553,7 @@ baseUrl为空时,通过”data“协议加载指定的一段字符串。 当baseUrl为“http/https"协议时,编码后的data字符串将被Web组件以类似loadUrl的方式以非编码字符串处理。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ---------- | ------ | ---- | ---- | ---------------------------------------- | | data | string | 是 | - | 按照”Base64“或者”URL"编码后的一段字符串。 | @@ -2367,6 +2563,7 @@ baseUrl为空时,通过”data“协议加载指定的一段字符串。 | historyUrl | string | 否 | - | 历史记录URL。非空时,可被历史记录管理,实现前后后退功能。当baseUrl为空时,此属性无效。 | **示例:** + ```ts // xxx.ets @Entry @@ -2401,12 +2598,14 @@ loadUrl(options: { url: string | Resource, headers?: Array\ }) 而通过registerJavaScriptProxy注入的对象,在loadUrl导航到新的页面也会有效。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ------- | -------------------------- | ---- | ---- | -------------- | | url | string | 是 | - | 需要加载的 URL。 | | headers | Array\<[Header](#header)\> | 否 | [] | URL的附加HTTP请求头。 | **示例:** + ```ts // xxx.ets @Entry @@ -2433,6 +2632,7 @@ onActive(): void 调用此接口通知Web组件进入前台激活状态。 **示例:** + ```ts // xxx.ets @Entry @@ -2459,6 +2659,7 @@ onInactive(): void 调用此接口通知Web组件进入未激活状态。 **示例:** + ```ts // xxx.ets @Entry @@ -2484,11 +2685,13 @@ zoom(factor: number): void 调整当前网页的缩放比例。 **参数:** + | 参数名 | 参数类型 | 必填 | 参数描述 | | ------ | ------ | ---- | ------------------------------ | | factor | number | 是 | 基于当前网页所需调整的相对缩放比例,正值为放大,负值为缩小。 | **示例:** + ```ts // xxx.ets @Entry @@ -2515,11 +2718,13 @@ zoomIn(): boolean 调用此接口将当前网页进行放大,比列20%。 **返回值:** + | 类型 | 说明 | | ------- | ----------- | | boolean | 放大操作是否成功执行。 | **示例:** + ```ts // xxx.ets @Entry @@ -2546,11 +2751,13 @@ zoomOut(): boolean 调用此接口将当前网页进行缩小,比列20%。 **返回值:** + | 类型 | 说明 | | ------- | ----------- | | boolean | 缩小操作是否成功执行。 | **示例:** + ```ts // xxx.ets @Entry @@ -2578,6 +2785,7 @@ refresh() 调用此接口通知Web组件刷新网页。 **示例:** + ```ts // xxx.ets @Entry @@ -2604,6 +2812,7 @@ registerJavaScriptProxy(options: { object: object, name: string, methodList: Arr 注入JavaScript对象到window对象中,并在window对象中调用该对象的方法。注册后,须调用[refresh](#refresh)接口生效。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ---------- | --------------- | ---- | ---- | ---------------------------------------- | | object | object | 是 | - | 参与注册的应用侧JavaScript对象。只能声明方法,不能声明属性 。其中方法的参数和返回类型只能为string,number,boolean | @@ -2611,6 +2820,7 @@ registerJavaScriptProxy(options: { object: object, name: string, methodList: Arr | methodList | Array\ | 是 | - | 参与注册的应用侧JavaScript对象的方法。 | **示例:** + ```ts // xxx.ets @Entry @@ -2668,12 +2878,14 @@ runJavaScript(options: { script: string, callback?: (result: string) => void }) 异步执行JavaScript脚本,并通过回调方式返回脚本执行的结果。runJavaScript需要在loadUrl完成后,比如onPageEnd中调用。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | -------- | ------------------------ | ---- | ---- | ---------------------------------------- | | script | string | 是 | - | JavaScript脚本。 | | callback | (result: string) => void | 否 | - | 回调执行JavaScript脚本结果。JavaScript脚本若执行失败或无返回值时,返回null。 | **示例:** + ```ts // xxx.ets @Entry @@ -2725,6 +2937,7 @@ stop() 停止页面加载。 **示例:** + ```ts // xxx.ets @Entry @@ -2751,6 +2964,7 @@ clearHistory(): void 删除所有前进后退记录。 **示例:** + ```ts // xxx.ets @Entry @@ -2777,11 +2991,13 @@ getCookieManager(): WebCookie 获取web组件cookie管理对象。 **返回值:** + | 类型 | 说明 | | --------- | ---------------------------------------- | | WebCookie | web组件cookie管理对象,参考[WebCookie](#webcookie)定义。 | **示例:** + ```ts // xxx.ets @Entry @@ -2809,11 +3025,13 @@ createWebMessagePorts(): Array\ **返回值:** + | 类型 | 说明 | | ------------------------------- | ------------- | | Array\<[WebMessagePort](#webmessageport9)\> | web信息端口列表。 | **示例:** + ```ts // xxx.ets @Entry @@ -2848,6 +3066,7 @@ postMessage(options: { message: WebMessageEvent, uri: string}): void | uri | string | 是 | - | 接收该信息的URI。 | **示例:** + ```ts // xxx.ets @Entry @@ -2892,6 +3111,7 @@ getType(): HitTestType 获取当前被点击区域的元素类型。 **返回值:** + | 类型 | 说明 | | ------------------------------- | ------------- | | [HitTestType](#hittesttype枚举说明) | 当前被点击区域的元素类型。 | @@ -2902,6 +3122,7 @@ getExtra(): string 若被点击区域为图片或链接,则附加参数信息为其url地址。 **返回值:** + | 类型 | 说明 | | ------ | ------------ | | string | 点击区域的附加参数信息。 | @@ -2917,17 +3138,20 @@ setCookie(url: string, value: string): boolean 设置cookie,该方法为同步方法。设置成功返回true,否则返回false。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ----- | ------ | ---- | ---- | ----------------- | | url | string | 是 | - | 要设置的cookie所属的url。 | | value | string | 是 | - | cookie的值。 | **返回值:** + | 类型 | 说明 | | ------- | ------------- | | boolean | 设置cookie是否成功。 | **示例:** + ```ts // xxx.ets @Entry @@ -2954,11 +3178,13 @@ saveCookieSync(): boolean 将当前存在内存中的cookie同步到磁盘中,该方法为同步方法。 **返回值:** + | 类型 | 说明 | | ------- | -------------------- | | boolean | 同步内存cookie到磁盘操作是否成功。 | **示例:** + ```ts // xxx.ets @Entry @@ -2979,24 +3205,28 @@ saveCookieSync(): boolean } ``` -## WebDataBase9+ -web组件数据库管理对象。 +### getCookie9+ +getCookie(url: string): string -### existHttpAuthCredentials9+ +获取指定url对应cookie的值。 -static existHttpAuthCredentials(): boolean +**参数:** -判断是否存在任何已保存的HTTP身份验证凭据,该方法为同步方法。存在返回true,不存在返回false。 +| 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | +| ----- | ------ | ---- | ---- | ----------------- | +| url | string | 是 | - | 要获取的cookie所属的url。 | -**返回值:** -| 类型 | 说明 | -| ------- | ---------------------------------------- | -| boolean | 是否存在任何已保存的HTTP身份验证凭据。存在返回true,不存在返回false | +**返回值:** + +| 类型 | 说明 | +| ------- | -------------------- | +| string | 指定url对应的cookie的值。 | **示例:** + ```ts // xxx.ets - import web from '@ohos.web'; + import webview from '@ohos.web.webview' @Entry @Component struct WebComponent { @@ -3004,10 +3234,10 @@ static existHttpAuthCredentials(): boolean build() { Column() { - Button('existHttpAuthCredentials') + Button('getCookie') .onClick(() => { - let result = web.WebDataBase.existHttpAuthCredentials(); - console.log('result: ' + result); + let value = webview.WebCookieManager.getCookie('www.example.com'); + console.log("value: " + value); }) Web({ src: 'www.example.com', controller: this.controller }) } @@ -3015,17 +3245,425 @@ static existHttpAuthCredentials(): boolean } ``` -### deleteHttpAuthCredentials9+ +### setCookie9+ +setCookie(url: string, value: string): boolean -static deleteHttpAuthCredentials(): void +为指定url设置单个cookie的值。 -清除所有已保存的HTTP身份验证凭据,该方法为同步方法。 +**参数:** -**示例:** - ```ts - // xxx.ets - import web from '@ohos.web'; - @Entry +| 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | +| ----- | ------ | ---- | ---- | ----------------- | +| url | string | 是 | - | 要设置的cookie所属的url。 | +| value | string | 是 | - | 要设置的cookie的值。 | + +**返回值:** + +| 类型 | 说明 | +| ------- | -------------------- | +| boolean | 设置cookie是否成功。 | + +**示例:** + + ```ts + // xxx.ets + import webview from '@ohos.web.webview' + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + + build() { + Column() { + Button('setCookie') + .onClick(() => { + let result = webview.WebCookieManager.setCookie('www.example.com', 'a=b'); + console.log("result: " + result); + }) + Web({ src: 'www.example.com', controller: this.controller }) + } + } + } + ``` + +### saveCookieSync9+ +saveCookieSync(): boolean + +将当前存在内存中的cookie保存到磁盘中,该方法为同步方法。 + +**返回值:** + +| 类型 | 说明 | +| ------- | -------------------- | +| boolean | 同步内存cookie到磁盘操作是否成功。 | + +**示例:** + + ```ts + // xxx.ets + import webview from '@ohos.web.webview' + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + + build() { + Column() { + Button('saveCookieSync') + .onClick(() => { + let result = webview.WebCookieManager.saveCookieSync(); + console.log("result: " + result); + }) + Web({ src: 'www.example.com', controller: this.controller }) + } + } + } + ``` + +### saveCookieAsync9+ +saveCookieAsync(): Promise\ + +将当前存在内存中的cookie以Promise方法异步保存到磁盘中。 + +**返回值:** + +| 类型 | 说明 | +| ------- | -------------------- | +| Promise\ | Promise实例,用于获取cookie是否成功保存。 | + +**示例:** + + ```ts + // xxx.ets + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + + build() { + Column() { + Button('saveCookieAsync') + .onClick(() => { + webview.WebCookieManager.saveCookieAsync() + .then (function(result) { + console.log("result: " + result); + }) + .catch(function(error) { + console.error("error: " + error); + }); + }) + Web({ src: 'www.example.com', controller: this.controller }) + } + } + } + ``` + +### saveCookieAsync9+ +saveCookieAsync(callback: AsyncCallback\): void + +将当前存在内存中的cookie异步保存到磁盘中。 + +**参数:** + +| 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | +| ----- | ------ | ---- | ---- | ----------------- | +| callback | AsyncCallback\ | 是 | - | 返回cookie是否成功保存的布尔值作为回调函数的入参。 | + +**示例:** + + ```ts + // xxx.ets + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + + build() { + Column() { + Button('saveCookieAsync') + .onClick(() => { + webview.WebCookieManager.saveCookieAsync(function(result) { + console.log("result: " + result); + }); + }) + Web({ src: 'www.example.com', controller: this.controller }) + } + } + } + ``` + +### isCookieAllowed9+ +isCookieAllowed(): boolean + +获取WebCookieManager实例是否拥有发送和接收cookie的权限。 + +**返回值:** + +| 类型 | 说明 | +| ------- | -------------------- | +| boolean | 是否拥有发送和接收cookie的权限。 | + +**示例:** + + ```ts + // xxx.ets + import webview from '@ohos.web.webview' + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + + build() { + Column() { + Button('isCookieAllowed') + .onClick(() => { + let result = webview.WebCookieManager.isCookieAllowed(); + console.log("result: " + result); + }) + Web({ src: 'www.example.com', controller: this.controller }) + } + } + } + ``` + +### putAcceptCookieEnabled9+ +putAcceptCookieEnabled(accept: boolean): void + +设置WebCookieManager实例是否拥有发送和接收cookie的权限。 + +**参数:** + +| 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | +| ----- | ------ | ---- | ---- | ----------------- | +| accept | boolean | 是 | - | 设置是否拥有发送和接收cookie的权限。 | + +**示例:** + + ```ts + // xxx.ets + import webview from '@ohos.web.webview' + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + + build() { + Column() { + Button('putAcceptCookieEnabled') + .onClick(() => { + webview.WebCookieManager.putAcceptCookieEnabled(false); + }) + Web({ src: 'www.example.com', controller: this.controller }) + } + } + } + ``` + +### isThirdPartyCookieAllowed9+ +isThirdCookieAllowed(): boolean + +获取WebCookieManager实例是否拥有发送和接收第三方cookie的权限。 + +**返回值:** + +| 类型 | 说明 | +| ------- | -------------------- | +| boolean | 是否拥有发送和接收第三方cookie的权限。 | + +**示例:** + + ```ts + // xxx.ets + import webview from '@ohos.web.webview' + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + + build() { + Column() { + Button('isThirdPartyCookieAllowed') + .onClick(() => { + let result = webview.WebCookieManager.isThirdPartyCookieAllowed(); + console.log("result: " + result); + }) + Web({ src: 'www.example.com', controller: this.controller }) + } + } + } + ``` + +### putAcceptThirdPartyCookieEnabled9+ +putAcceptThirdPartyCookieEnabled(accept: boolean): void + +设置WebCookieManager实例是否拥有发送和接收第三方cookie的权限。 + +**参数:** + +| 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | +| ----- | ------ | ---- | ---- | ----------------- | +| accept | boolean | 是 | - | 设置是否拥有发送和接收第三方cookie的权限。 | + +**示例:** + + ```ts + // xxx.ets + import webview from '@ohos.web.webview' + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + + build() { + Column() { + Button('putAcceptThirdPartyCookieEnabled') + .onClick(() => { + webview.WebCookieManager.putAcceptThirdPartyCookieEnabled(false); + }) + Web({ src: 'www.example.com', controller: this.controller }) + } + } + } + ``` + +### existCookie9+ +existCookie(): boolean + +获取是否存在cookie。 + +**返回值:** + +| 类型 | 说明 | +| ------- | -------------------- | +| boolean | 是否存在cookie。 | + +**示例:** + + ```ts + // xxx.ets + import webview from '@ohos.web.webview' + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + + build() { + Column() { + Button('existCookie') + .onClick(() => { + let result = webview.WebCookieManager.existCookie(); + console.log("result: " + result); + }) + Web({ src: 'www.example.com', controller: this.controller }) + } + } + } + ``` + +### deleteEntireCookie9+ +deleteEntireCookie(): void + +清除所有cookie。 + +**示例:** + + ```ts + // xxx.ets + import webview from '@ohos.web.webview' + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + + build() { + Column() { + Button('deleteEntireCookie') + .onClick(() => { + webview.WebCookieManager.deleteEntireCookie(); + }) + Web({ src: 'www.example.com', controller: this.controller }) + } + } + } + ``` + +### deleteSessionCookie9+ +deleteSessionCookie(): void + +清除所有会话cookie。 + +**示例:** + + ```ts + // xxx.ets + import webview from '@ohos.web.webview' + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + + build() { + Column() { + Button('deleteSessionCookie') + .onClick(() => { + webview.WebCookieManager.deleteSessionCookie(); + }) + Web({ src: 'www.example.com', controller: this.controller }) + } + } + } + ``` + +## WebDataBase9+ +web组件数据库管理对象。 + +### existHttpAuthCredentials9+ + +static existHttpAuthCredentials(): boolean + +判断是否存在任何已保存的HTTP身份验证凭据,该方法为同步方法。存在返回true,不存在返回false。 + +**返回值:** + +| 类型 | 说明 | +| ------- | ---------------------------------------- | +| boolean | 是否存在任何已保存的HTTP身份验证凭据。存在返回true,不存在返回false | + +**示例:** + + ```ts + // xxx.ets + import web from '@ohos.web'; + @Entry + @Component + struct WebComponent { + controller: WebController = new WebController(); + + build() { + Column() { + Button('existHttpAuthCredentials') + .onClick(() => { + let result = web.WebDataBase.existHttpAuthCredentials(); + console.log('result: ' + result); + }) + Web({ src: 'www.example.com', controller: this.controller }) + } + } + } + ``` + +### deleteHttpAuthCredentials9+ + +static deleteHttpAuthCredentials(): void + +清除所有已保存的HTTP身份验证凭据,该方法为同步方法。 + +**示例:** + + ```ts + // xxx.ets + import web from '@ohos.web'; + @Entry @Component struct WebComponent { controller: WebController = new WebController(); @@ -3049,17 +3687,20 @@ static getHttpAuthCredentials(host: string, realm: string): Array\ 检索给定主机和域的HTTP身份验证凭据,该方法为同步方法。检索成功返回一个包含用户名和密码的组数,检索不成功返回空数组。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | ----- | ------ | ---- | ---- | ---------------- | | host | string | 是 | - | HTTP身份验证凭据应用的主机。 | | realm | string | 是 | - | HTTP身份验证凭据应用的域。 | **返回值:** + | 类型 | 说明 | | --------------- | ---------------------- | | Array\ | 包含用户名和密码的组数,检索失败返回空数组。 | **示例:** + ```ts // xxx.ets import web from '@ohos.web'; @@ -3093,6 +3734,7 @@ static saveHttpAuthCredentials(host: string, realm: string, username: string, pa 保存给定主机和域的HTTP身份验证凭据,该方法为同步方法。 **参数:** + | 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 | | -------- | ------ | ---- | ---- | ---------------- | | host | string | 是 | - | HTTP身份验证凭据应用的主机。 | @@ -3101,6 +3743,7 @@ static saveHttpAuthCredentials(host: string, realm: string, username: string, pa | password | string | 是 | - | 密码。 | **示例:** + ```ts // xxx.ets import web from '@ohos.web'; @@ -3398,6 +4041,7 @@ static deleteAllData(): void 清除Web SQL数据库当前使用的所有存储。 **示例:** + ```ts // xxx.ets import web from '@ohos.web'; @@ -3424,11 +4068,13 @@ static deleteOrigin(origin : string): void 清除指定源所使用的存储。 **参数:** + | 参数名 | 参数类型 | 必填 | 说明 | | ------ | ------ | ---- | ---------- | | origin | string | 是 | 指定源的字符串索引。 | **示例:** + ```ts // xxx.ets import web from '@ohos.web'; @@ -3456,11 +4102,13 @@ static getOrigins(callback: AsyncCallback>) : void 以回调方式异步获取当前使用Web SQL数据库的所有源的信息。 **参数:** + | 参数名 | 参数类型 | 必填 | 说明 | | -------- | ---------------------------------------- | ---- | ----------------------------------- | | callback | AsyncCallback> | 是 | 以数组方式返回源的信息,信息内容参考WebStorageOrigin。 | **示例:** + ```ts // xxx.ets import web from '@ohos.web'; @@ -3498,11 +4146,13 @@ static getOrigins() : Promise> 以Promise方式异步获取当前使用Web SQL数据库的所有源的信息。 **返回值:** + | 类型 | 说明 | | ---------------------------------------- | ---------------------------------------- | | Promise> | Promise实例,用于获取当前所有源的信息,信息内容参考WebStorageOrigin。 | **示例:** + ```ts // xxx.ets import web from '@ohos.web'; @@ -3540,12 +4190,14 @@ static getOriginQuota(origin : string, callback : AsyncCallback\) : void 使用callback回调异步获取指定源的Web SQL数据库的存储配额,配额以字节为单位。 **参数:** + | 参数名 | 参数类型 | 必填 | 说明 | | -------- | ---------------------- | ---- | --------- | | origin | string | 是 | 指定源的字符串索引 | | callback | AsyncCallback\ | 是 | 指定源的存储配额。 | **示例:** + ```ts // xxx.ets import web from '@ohos.web'; @@ -3579,16 +4231,19 @@ static getOriginQuota(origin : string) : Promise\ 以Promise方式异步获取指定源的Web SQL数据库的存储配额,配额以字节为单位。 **参数:** + | 参数名 | 参数类型 | 必填 | 说明 | | ------ | ------ | ---- | ---------- | | origin | string | 是 | 指定源的字符串索引。 | **返回值:** + | 类型 | 说明 | | ---------------- | ----------------------- | | Promise\ | Promise实例,用于获取指定源的存储配额。 | **示例:** + ```ts // xxx.ets import web from '@ohos.web'; @@ -3622,12 +4277,14 @@ static getOriginUsage(origin : string, callback : AsyncCallback\) : void 以回调方式异步获取指定源的Web SQL数据库的存储量,存储量以字节为单位。 **参数:** + | 参数名 | 参数类型 | 必填 | 说明 | | -------- | ---------------------- | ---- | ---------- | | origin | string | 是 | 指定源的字符串索引。 | | callback | AsyncCallback\ | 是 | 指定源的存储量。 | **示例:** + ```ts // xxx.ets import web from '@ohos.web'; @@ -3661,16 +4318,19 @@ static getOriginUsage(origin : string) : Promise\ 以Promise方式异步获取指定源的Web SQL数据库的存储量,存储量以字节为单位。 **参数:** + | 参数名 | 参数类型 | 必填 | 说明 | | ------ | ------ | ---- | ---------- | | origin | string | 是 | 指定源的字符串索引。 | **返回值:** + | 类型 | 说明 | | ---------------- | ---------------------- | | Promise\ | Promise实例,用于获取指定源的存储量。 | **示例:** + ```ts // xxx.ets import web from '@ohos.web'; @@ -3710,6 +4370,7 @@ searchAllAsync(searchString: string): void | searchString | string | 是 | - | 查找的关键字。 | **示例:** + ```ts // xxx.ets @Entry @@ -3749,6 +4410,7 @@ clearMatches(): void 清除所有通过[searchAllAsync](#searchallasync9)匹配到的高亮字符查找结果。 **示例:** + ```ts // xxx.ets @Entry @@ -3782,6 +4444,7 @@ searchNext(forward: boolean): void **示例:** + ```ts // xxx.ets @Entry @@ -3816,6 +4479,7 @@ onSearchResultReceive(callback: (event?: {activeMatchOrdinal: number, numberOfMa | isDoneCounting | boolean | 当次页内查找操作是否结束。该方法可能会回调多次,直到isDoneCounting为true为止。 | **示例:** + ```ts // xxx.ets @Entry @@ -3840,6 +4504,7 @@ onSearchResultReceive(callback: (event?: {activeMatchOrdinal: number, numberOfMa 提供Web SQL数据库的使用信息。 **参数:** + | 参数名 | 参数类型 | 必填 | 说明 | | ------ | ------ | ---- | ---------- | | origin | string | 是 | 指定源的字符串索引。 | @@ -4028,6 +4693,7 @@ postMessageEvent(message: WebMessageEvent): void | message | [WebMessageEvent](#webmessageevent9) | 是 | - | 要发送的消息。 | **示例:** + ```ts // xxx.ets @Entry @@ -4062,6 +4728,7 @@ onMessageEvent(callback: (result: string) => void): void | callback | function | 是 | - | 接收消息的回调函数。 | **示例:** + ```ts // xxx.ets @Entry @@ -4101,6 +4768,7 @@ getData(): string | string | 当前该类型对象中存放的消息。 | **示例:** + ```ts // xxx.ets @Entry @@ -4132,6 +4800,7 @@ setData(data: string): void | data | string | 是 | - | 要发送的消息。 | **示例:** + ```ts // xxx.ets @Entry @@ -4165,6 +4834,7 @@ getPorts(): Array\ | Array\<[WebMessagePort](#webmessageport9)\> | 当前该类型对象中存放的消息端口。 | **示例:** + ```ts // xxx.ets @Entry @@ -4198,6 +4868,7 @@ setPorts(ports: Array\): void | ports | Array\<[WebMessagePort](#webmessageport9)\> | 是 | - | 要发送的消息端口。 | **示例:** + ```ts // xxx.ets @Entry