diff --git a/interfaces/kits/napi/webviewcontroller/napi_webview_controller.cpp b/interfaces/kits/napi/webviewcontroller/napi_webview_controller.cpp index e93803932cd4a5b770f2c9ed284bf46c038cc365..f1793b228fe710d36ed1ac0392d6758c9ca9229a 100644 --- a/interfaces/kits/napi/webviewcontroller/napi_webview_controller.cpp +++ b/interfaces/kits/napi/webviewcontroller/napi_webview_controller.cpp @@ -524,24 +524,27 @@ std::shared_ptr GetPrefetchOptions(napi_env env, napi_value { napi_value minTimeBetweenPrefetchesMsObj = nullptr; int32_t minTimeBetweenPrefetchesMs = 500; - napi_get_named_property(env, Options, "minTimeBetweenPrefetchesMs", &minTimeBetweenPrefetchesMsObj); - if (!NapiParseUtils::ParseInt32(env, minTimeBetweenPrefetchesMsObj, minTimeBetweenPrefetchesMs)) { - BusinessError::ThrowErrorByErrcode(env, PARAM_CHECK_ERROR, - NWebError::FormatString(ParamCheckErrorMsgTemplate::TYPE_ERROR, "minTimeBetweenPrefetches", "number")); - return nullptr; - } - napi_value ignoreCacheControlNoStoreObj = nullptr; bool ignoreCacheControlNoStore = false; - napi_get_named_property(env, Options, "ignoreCacheControlNoStore", &ignoreCacheControlNoStoreObj); - if (!NapiParseUtils::ParseBoolean(env, ignoreCacheControlNoStoreObj, ignoreCacheControlNoStore)) { - BusinessError::ThrowErrorByErrcode(env, PARAM_CHECK_ERROR, - NWebError::FormatString(ParamCheckErrorMsgTemplate::TYPE_ERROR, "ignoreCacheControlNoStore", "number")); - return nullptr; - } - + std::shared_ptr prefetchOptions = std::make_shared( minTimeBetweenPrefetchesMs, ignoreCacheControlNoStore); + + if (napi_get_named_property(env, Options, "minTimeBetweenPrefetchesMs", + &minTimeBetweenPrefetchesMsObj) == napi_ok) { + if (!NapiParseUtils::ParseInt32(env, minTimeBetweenPrefetchesMsObj, minTimeBetweenPrefetchesMs)) { + WVLOG_E("wrong Param type."); + } + } + + if (napi_get_named_property(env, Options, "ignoreCacheControlNoStore", + &ignoreCacheControlNoStoreObj) == napi_ok) { + if (!NapiParseUtils::ParseBoolean(env, ignoreCacheControlNoStoreObj, ignoreCacheControlNoStore)) { + WVLOG_E("wrong Param type."); + } + } + + prefetchOptions = std::make_shared(minTimeBetweenPrefetchesMs, ignoreCacheControlNoStore); return prefetchOptions; }