From 415b0bf1a7a59670588f606b3c6dc6551b4b5947 Mon Sep 17 00:00:00 2001 From: jinzhao Date: Wed, 30 Oct 2024 14:23:36 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=96=B0=E5=A2=9Ehttps=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E8=AF=81=E4=B9=A6=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: jinzhao --- entry/src/main/ets/pages/SingleImage.ets | 4 +++- library/src/main/ets/ImageKnifeDispatcher.ets | 3 ++- library/src/main/ets/ImageKnifeLoader.ets | 1 + library/src/main/ets/model/ImageKnifeData.ets | 1 + library/src/main/ets/model/ImageKnifeOption.ets | 10 ++++++++-- 5 files changed, 15 insertions(+), 4 deletions(-) diff --git a/entry/src/main/ets/pages/SingleImage.ets b/entry/src/main/ets/pages/SingleImage.ets index 1c2c8af..c1d51e6 100644 --- a/entry/src/main/ets/pages/SingleImage.ets +++ b/entry/src/main/ets/pages/SingleImage.ets @@ -76,7 +76,9 @@ struct SingleImage { placeholderSrc: $r("app.media.loading"), errorholderSrc: $r("app.media.failed"), objectFit: ImageFit.Contain, - progressListener:(progress:number)=>{console.info("ImageKnife:: call back progress = " + progress)} + progressListener:(progress:number)=>{console.info("ImageKnife:: call back progress = " + progress)}, + // 通过https协议进行连接时,默认使用系统预设CA证书。若希望使用自定义证书进行https连接,则需要将自定义证书上传至应用沙箱目录中,并在caPath中指定该证书所在的应用沙箱路径 + // caPath: "/data/storage/el1/bundle/ca.pem", } }).width(100).height(100) Text($r('app.string.Custom_network_download')) diff --git a/library/src/main/ets/ImageKnifeDispatcher.ets b/library/src/main/ets/ImageKnifeDispatcher.ets index 8eb5a05..c7f47b5 100644 --- a/library/src/main/ets/ImageKnifeDispatcher.ets +++ b/library/src/main/ets/ImageKnifeDispatcher.ets @@ -192,7 +192,8 @@ export class ImageKnifeDispatcher { fileCacheFolder: ImageKnife.getInstance().getFileCache()?.getCacheFolder(), isAnimator:isAnimator, moduleName: moduleName == "" ? undefined : moduleName, - resName: resName == "" ? undefined : resName + resName: resName == "" ? undefined : resName, + caPath: currentRequest.imageKnifeOption.caPath, } if(request.customGetImage == undefined) { diff --git a/library/src/main/ets/ImageKnifeLoader.ets b/library/src/main/ets/ImageKnifeLoader.ets index f8cd230..22e6faf 100644 --- a/library/src/main/ets/ImageKnifeLoader.ets +++ b/library/src/main/ets/ImageKnifeLoader.ets @@ -333,6 +333,7 @@ export class ImageKnifeLoader { readTimeout: 0, // usingProtocol:http.HttpProtocol.HTTP1_1 // header: new Header('application/json') + caPath: request.caPath === undefined ? undefined : request.caPath, }); promise.then((data: number) => { diff --git a/library/src/main/ets/model/ImageKnifeData.ets b/library/src/main/ets/model/ImageKnifeData.ets index 45b4635..20524d0 100644 --- a/library/src/main/ets/model/ImageKnifeData.ets +++ b/library/src/main/ets/model/ImageKnifeData.ets @@ -104,5 +104,6 @@ export interface RequestJobRequest { isAnimator?: boolean, moduleName?:string, resName?: string + caPath?: string, } diff --git a/library/src/main/ets/model/ImageKnifeOption.ets b/library/src/main/ets/model/ImageKnifeOption.ets index b34da66..0944633 100644 --- a/library/src/main/ets/model/ImageKnifeOption.ets +++ b/library/src/main/ets/model/ImageKnifeOption.ets @@ -44,6 +44,10 @@ export class AnimatorOption { onRepeat?:()=>void } +interface ImageOption { + // 自定义证书路径 + caPath?: string, +} @Observed export class ImageKnifeOption { // 主图资源 @@ -74,8 +78,10 @@ export class ImageKnifeOption { onLoadListener?: OnLoadCallBack | undefined; onComplete?:(event:EventImage | undefined) => void drawingColorFilter?: ColorFilter | drawing.ColorFilter - constructor() { - + // 自定义证书路径 + caPath?: string + constructor(option?:ImageOption) { + this.caPath = option?.caPath } } From 9ba0a23c927f4768a31a6d7d464d6a4e398705e8 Mon Sep 17 00:00:00 2001 From: jinzhao Date: Thu, 31 Oct 2024 17:33:08 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=88=A0=E9=99=A4=E5=AF=B9constructor?= =?UTF-8?q?=E7=9A=84=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: jinzhao --- library/src/main/ets/model/ImageKnifeOption.ets | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/library/src/main/ets/model/ImageKnifeOption.ets b/library/src/main/ets/model/ImageKnifeOption.ets index 0944633..7f1c999 100644 --- a/library/src/main/ets/model/ImageKnifeOption.ets +++ b/library/src/main/ets/model/ImageKnifeOption.ets @@ -80,8 +80,8 @@ export class ImageKnifeOption { drawingColorFilter?: ColorFilter | drawing.ColorFilter // 自定义证书路径 caPath?: string - constructor(option?:ImageOption) { - this.caPath = option?.caPath + constructor() { + } }