From eaa438b7bf6dbc0a1f5d175f38328fd2b477f599 Mon Sep 17 00:00:00 2001 From: jinyaqiu Date: Tue, 19 Aug 2025 15:43:15 +0800 Subject: [PATCH 1/7] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E4=B8=AD?= =?UTF-8?q?=E6=96=87=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UserInterfaceState.xcuserstate | Bin 119677 -> 119657 bytes wake/View/Components/Upload/Avatar.swift | 78 +++- wake/View/Components/Upload/Upload.swift | 354 ++++++++++++++++++ 3 files changed, 425 insertions(+), 7 deletions(-) create mode 100644 wake/View/Components/Upload/Upload.swift diff --git a/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate b/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate index 2a4b61bd9495889a21bc55f253585f5ed6146ae5..145f50a500155887163755621b61f1598ab4d18a 100644 GIT binary patch literal 119657 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 E0o1$d`v3p{ literal 119677 zcmeEvcVHAn`~S}D?(Oc~?e&r?IYJ4YR9aAkKmvpoAfcC-a)C%1xrCykJBWxBrKo^n zApxb?Kv5JFP*FjVX76Ihf{2~+duI18g&+pMzQ6bVLm=TY`^+=Xl+QEI^UO1wyz=6r zP-Q~GQ3f%XVHu9$866`q`Z2Ah2P;BFWu;?V`sDtQy>hlfWc0NlY@+ znd!oGWx6rlnW0Q3GmII|j9{{uY-S`giW$vJWr~>+rj#jT%9&|Q1ruTjGl#i>nakYB z%wuk17Bjan%a~QnUCbJ09dkdkjd_B3lG)BY#XQaIV0JRkFwZi(nBB~)%mL;#<{)#3 zd7XKKd5?LY`Iz~H`GWa{`IY&N`JMTLInA6w24qAsG9fdvASZGmH}auor~~SVl2Hok zfi6S6P+ydW2A~Wy1Pw*Q(FimOjYZ?ocr+PJK}F~)G!>Phax@*yK-Zva(E_v(EkcXY zE$CLX3@t}@pnK50=svU&Z9<#TgXkf&4LyyXMbDuZ(M#wR^eQ@lUPEu9x6s?@J#-9x ziatZ1qc6~x=sWa1`UU-pe#3U`z)tMKZXAU@*o%GGkE3w_x5piDN8Aa=;U4%hd^zrk zufSSgEY8OTIEV}J)%Y5GEuM|9!`EX46Fdjsfal^H@y&P@z7yYt zSL3_!J@{UHAKr*J;m!C#{3zayU&1fr!}tySCVm&chd;s}pC89l{Q0i`c8!scbP@!j`gSY&koP ztzbj!4E8$qdRAfQu{W_x*=6i<_BM7Udl!2zdmp=ot!6i}o7m0lgX}}>7IrK982dE) zJo^&+3VV<}%D%&5lvQn@}{CYQx!b7Q!%+(d2?m&fIElesBeF;~J(<0`o6+zjp-?pp3P z?so1DZUwiJTgBbU-Nmiu?&j{{)^h8)4cu;S5BD7RJof^(mwS|jcn9z01AGg{C0jf{~CXgKg1vA-{9ZjKj1&)KjlB; zKj)A0-|*k+Se>8~bw-`6v+8U*m(H#8>HNAFU2|QmuC=bcu7fUKm!RveOVRbvU7_oz z8>kzh%hF}*#^|op73hj}<+_==YjtyV^L0yfOLfb1cj)fXRqGzoZP9JjJ)wJ2w?ns6 zw_CSI_loXS-2vTex+A)yy0>)i>fY0RuKPmwrS2=;*Sha?Kj{9@ofELY3bJ4l%z{O* z3Qi$P2na2NmO>k$i;yDp5Uvn<34Mh$VStb!3=xJ3g~DWEicln6B}^5Hg%Y7uC=<$s zO5qyeT4AnmqcBfcA}ke_3Co2Q!d*g*uvS=X72uL!RS2ZYyz zgTf)LSKUHC&dEu0aN$cwUQ5?hOH#I|BPvAx(q>?n2;zI z^;pm91-+;@>SeuEZ_~Ttpq;_3iZ?^zr%xeP?|aeTu$^{tA6BeP4Z= zet(e!c!7{loh0`ls|y>v!mP>7UoXqJLHYnf`PA7y2*tU+KTr zAJ>1Q|5pE<{(Jq8`ri%Mz#2G%(I6X4hA4x_;5GOR%?vFK9Sj`}X@+z|KSO`R07Hgh zpka_eT>jbW`}o#B4N1BUg6 z4Tg<|O@_^e2Mv!Jo;2(->^AH%>@(~)yl!~I@TTD{!+VC03||_)G9n{3vPRCx8+As( zC>kZB-e@qIjV`0x7-ftxHaE5~wl{V#b~JW1b~AQ2rWkt~Q;mI$1C4`>`Njfc&{$}k zY@A{&GG1kzYAiOE7^fL$8Wkfk&M_`9E;KGO-eFu}TxncoyxX|OxWTy5xX1XM@pTKOsLUZ-`{e!d zG5J&ZGx>A*3;9d=EBR~rxcrU$t^9-htNfb@nXrj9$tIJ@Y_gafrYKX4sky0zsimov zsiUcrDc#i1)Za9~lwlfZ8e|%58e$r1$~0w}#+k;OCYTCLK~tfr)Kq3FH-${IP1l*O zHz}sMrun9uO-oJ7OdCy`Oq)#)njSJeYsA-F7tLZV*lcr})yG*-HFPrw6_M2We zyNh% zcQki4cQJQ0_co`R`dhD)_m(V)@!Y^t=Czvw<=a*onyVhI@fxm^=9i5>r(3~ z>z&rStm~}zTOY8lw{EsRVtvxO-TIVukM%k0`_>PvA6h@Mer)~3dd&K%^)u_|)-SAI zTEDUWXgy^;Z9QW>Ytz{Tn`pDy>^6tZY4g~kZJlg!ws>2DEzy=_OSWBRyWG~t*4H-3 zHrQ5R3)%{8lWkLMMYgMKQ*Fhz5?iUQ!ZyoBY;$Zk*cRFr*%sSY*jCzB+3vL6W2?4p zv~99IXM5iEf^DzuMcYfZmu>rO`)#k-UbP*vy=8mb_Kxin+cDdxwr_0T+P<^>YWvOh zyX_C#IXi1N*p2p9_E>vsdmDROdpmo3dk1?*dnbFGJ;|P8Pqp{4_q7kP54C67huO33 zW9(PjbM1NdtL#(lH`wReZ?w;|-(;U}zuCUPzRYY}n&FOXeoPK9(XB%f*XFF#n zXQDI3*~596^KxgJGu=7SImwyhywaKL%yZ^D3!Fh`p>wixsyoB!Fkg8v-5WscCjv>%kPSI1zgQsF|OvW7Os}AR<2lAJ6D3MyDP=j!A2U3spnUDvp-bju|c*L>HluG?LAxbAbU zaaFr&To1T5xi-5Vb3N|b<~rbd&2`Xq$aUCt#C6p5y6X+so36K9@41e-j=R2bee3$k z^|PCCBR6)lZozGE+uaU#M|UT8oIBo~;7)WWxs%Mna-t?j zO^GUs3Pn{$RYgsYx;pB*sCiL0Mco>;Bx-%shNz8Eo1!*HJs9;+)WcDaL_Hd{C2CvL z&ZuXi_C~!J^-|Qqs6$bQquz^pKk9?152KDneG&D2)CrI1kvw{j!DIBu9+SuHv3RT= zo5$se_5?hwJ#9Q~JxQKqPiIdTPl~6fC*9M})8CWn8RnVdDe_$9nd&L_lz2)#Wu9`+ zG*5+Rx@WfMI?p`MO`iFlC7z|8WuDcZyFK@K?)B7o9`HQudBpRQ=Vi}6&wkGx5w zJg<2UdJcIGd*1N8@A<&b;GN|Nkp z=w0Mp?7hW%t9OZasdt%oxp#&49`F6$2fXXOTfAGnk9i;WZujo=zTn;KebM`p_n`NX z_bcz$-s9eHyx)4i^M3C=;r+pT()*+L7w=i0&L{XppT%eO`Fws~v@hUm;cM-S^Tqr6 z`v&+jd;@)he1m;Md_#SizG1%MzLCBOzKOn|uh2KyH_cb!3;8O2Gkw?k=K5~*&GX&l zyVbYEx6!xBx7qig?;+pAzDInI`nLGC`X2K=?%VF$<=gGs-`)2kNUUxxB8#<@9^*RzvzF-|FVCd|A7Cn{~iCk{vZ9P{6G1B z_W$Dl)&HCScmE&$)BZEjC|ZoRL|db6(cWlZbZm6%=r+-9qdP_?M0bx)i5?z3B04KN zJ9=dFsOZtrW1`1KkBc53ofBOcT^wB!JtKN%^sMNsqpype6TKjMVf5|McSo;@-Vps@ z^yASxqjyK|i9QhhTJ*u_L(zw$k3=7hek=Ne=ntbmivBYCtLU$zk4K+~J{5g7`doks zpa37x2MhsYz!7i;Tmf$&CeSJn8|V<|7)S_o5A+Q53iJsK2xJ5X28IT*17iYtf&4&0 zAQ&hKlm;pSRe_lSC2&JvUSL^ZdEmCd?SVT2s{*S7_Xes1PX(S1>f9Uf}(}2Z0X*9|b-Rd=dB|a5C^?;8ftJ zz`15jGp?D~EUKBOnYWp*nZH@Hk*!Lrii?jhGGk)QjD@i?uF*rY;-&^?g~q}E;rP?2 zR{6!bp-?qrWo!yo*lNbXI2DedR3$FQ(keMAv3u9#)F-8D_ilaDb1aUGwDi$s6;ngyx%t7gviz!&U}A0TpF@7eR2{6r= z7^XSXLg5viA}FFFDSE}A7}qncm{_JYe6kI=MIqPjW0*P{K$*p`>qF zX=O!OadEIBC#hdrdTL_7KAn=&Qag9*oSFaw)i14cr#^lAbV*3+mYSZNo|a>21`Ja3 zD$e!%;ii^<_e}4)0;_U`Y2Y#rq~sS;#6FU zTZvLU8(=EZnSM-vW&o4H420b+pHf#Ek)gJQiO^hnK~b1*r1xW(T)H5~GUJ%>%mij4Gl|Jz zu2g)AUx`)%N;4%!X|A+b&*U-rOaT*Q3Yp2w6sAaNsU#{%$`#5$rA)b6xqZ9Umt*n$3CZBH$som_J?#gGii~9? zb2Za(9aF_jXJ#-nnORCJC01#zv{BlwW3GYK63bl2T(7i)Rbo=wEAdJv3cfJ7M!-Pi zSlU2A-Eh@*uU}DdWw0W%bVyl2QBh%05XLU{;*{y76#YPF2D->FX9M6h{nQt5np++U z7E}gHLRzuwnrjj|#&k+dnB6hvnxxK29b>w6PnbPB(zp4{0>-t5xmoG3hFPd|r23Gu z*0fHl$|FL0E3<^@c;9_Wr^C#0<~HVb=8kciUM&R$Ge-Lugdw#L%^FfwN##r{0yR)p znp-ie2FO=1D<=%isw*2aG%Hg*AJF)%VD7A@G?C_3GxyX=cCV74#6=!dGc}qVOhD z^FK#{CUz4*_7^a{WEIjBSngq7WIC>8o@1V8USRery_DWcs?ujI^AhtivyXX6>8qqE z>F^yU(4iqs-8K8n0=Na?APN-K;M`DUEgETYj>R>yv`~fR`NUBgk6^*bjE0XQ3+ym+ zgmD2r077&VYrr?F47LNnL4@{A=54yT-%|RmVct>tU$o9)uxvhHK4d=1v3NlfQ(z6F zCvhW!+FSjhW$&Bjs~<#btGLStWsjYdUs7I0 zZkWH~zI6|5etg^Z9WNX>^o~{!A?<&##v1-PrYW0a%%@-yrOzxc*6gXws>=r@2JGCX`{01+JFr#scYSj^_t9{RUQm=3pbZD zDk~>Bv5rn1zAUgfN+)L&z--fvq9P}c(3M2zO4a*07B@Un^-OjJokM6< zl>(HBJFQRu+LcXBLwKeEM`Z`bQD$lJtPxeEr66yg;NeRiLp-cpR>7 z!I93KMI7B|&mjgOgb}NZP_mS4Wu!7{9pa%At&oT$Wi)g_R>mtO6xr1JRV9T1%Y|iG zpe|%>A63g!i@{7Om_?f}?N?SYG&o~eZWZ7_?NE*-5$X@fogU06g(aU`Ts$knr|+P%*KwF^TF@MN!BD+h%x2%?ei5K#7-GIdW(g z{Gf61qre&ztxQmg-#{^_Icfo%TcTDd7PW@2wx}Iy4_YANvkWfFS2f0@y5%$sPz_^Q zYc-81E2{)`7u3q3W=U>QX&reESnyN@WEMtv);&`gWfFW%RVFG|!SL4ZQVqr^E`4S& zzl!RZ^wQ}?6=kK=m(p6%dejLetwnJt9wneeB}d6ug34s2=m_eJxlbhX<5nBdIFvX3b%j2R8X zo?2cW7n+h=5iFoM_|<=rWB-j6Ab3C*j!`z-yj`i4+c03#ZUR*kdj)psqqpNLyPmg=G~n zbm?57iJFOqfhU|=QIR{V8f7vo?bn~v{%DW0PVo^MVDr$w^6Fk`rLdy{L(bCLnNS)}o1M63RhWD&@*Fr9ug< zMR_P66`(w&QmIm=!}tGB`#dT}B~9Ju(KHl-eI8XPGuEI=W#(V)^JpgXA-ejn_W4khkuR&>aGg>t;GIIunCkxM;*Vellp0{*swJdJ

kI8GW?W9 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 diff --git a/wake/View/Components/Upload/Avatar.swift b/wake/View/Components/Upload/Avatar.swift index d5e6deb..359836a 100644 --- a/wake/View/Components/Upload/Avatar.swift +++ b/wake/View/Components/Upload/Avatar.swift @@ -1,18 +1,39 @@ import SwiftUI import PhotosUI +/// 照片选择器,封装了系统相册选择功能 struct PhotoPicker: UIViewControllerRepresentable { + // MARK: - 属性 + + /// 绑定的已选图片数组 @Binding var selectedImages: [UIImage] + + /// 最多可选图片数量 let selectionLimit: Int + + /// 图片过滤器,默认为图片类型 let filter: PHPickerFilter + // MARK: - 初始化方法 + + /// 初始化照片选择器 + /// - Parameters: + /// - selectedImages: 绑定的已选图片数组 + /// - selectionLimit: 最多可选图片数量,默认为1 + /// - filter: 图片过滤器,默认为.images init(selectedImages: Binding<[UIImage]>, selectionLimit: Int = 1, filter: PHPickerFilter = .images) { self._selectedImages = selectedImages self.selectionLimit = selectionLimit self.filter = filter } + // MARK: - UIViewControllerRepresentable 协议方法 + + /// 创建并返回PHPickerViewController实例 + /// - Parameter context: 上下文 + /// - Returns: 配置好的PHPickerViewController func makeUIViewController(context: Context) -> PHPickerViewController { + // 配置照片选择器 var configuration = PHPickerConfiguration(photoLibrary: PHPhotoLibrary.shared()) configuration.filter = filter configuration.selectionLimit = selectionLimit @@ -23,31 +44,53 @@ struct PhotoPicker: UIViewControllerRepresentable { return picker } + /// 更新视图控制器 + /// - Parameters: + /// - uiViewController: 要更新的视图控制器 + /// - context: 上下文 func updateUIViewController(_ uiViewController: PHPickerViewController, context: Context) {} + /// 创建协调器 + /// - Returns: 协调器实例 func makeCoordinator() -> Coordinator { Coordinator(self) } + // MARK: - 协调器类 + + /// 协调器,处理PHPickerViewController的代理方法 class Coordinator: NSObject, PHPickerViewControllerDelegate { + /// 父视图引用 let parent: PhotoPicker + /// 初始化方法 + /// - Parameter parent: 父视图 init(_ parent: PhotoPicker) { self.parent = parent } + /// 用户完成图片选择时调用 + /// - Parameters: + /// - picker: 图片选择器 + /// - results: 选中的图片结果 func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) { + // 清空之前选中的图片 parent.selectedImages.removeAll() + // 使用DispatchGroup管理异步图片加载 let group = DispatchGroup() var loadedImages: [Int: UIImage] = [:] + // 遍历所有选中的图片 for (index, result) in results.enumerated() { group.enter() + // 检查是否支持加载图片 if result.itemProvider.canLoadObject(ofClass: UIImage.self) { + // 异步加载图片 result.itemProvider.loadObject(ofClass: UIImage.self) { (image, error) in if let image = image as? UIImage { + // 保存加载的图片,保持原始顺序 loadedImages[index] = image } group.leave() @@ -57,39 +100,55 @@ struct PhotoPicker: UIViewControllerRepresentable { } } + // 所有图片加载完成后的处理 group.notify(queue: .main) { - // Sort the images by their original index to maintain selection order + // 按原始顺序排序图片 let sortedImages = loadedImages.sorted { $0.key < $1.key }.map { $0.value } + // 更新选中的图片数组 self.parent.selectedImages.append(contentsOf: sortedImages) - // Dismiss the picker + // 关闭图片选择器 picker.dismiss(animated: true) } } } } -// MARK: - Avatar Uploader Component +// MARK: - 头像上传组件 + +/// 头像上传视图,提供头像选择功能 struct AvatarUploader: View { + // MARK: - 属性 + + /// 当前选中的头像图片 @Binding var selectedImage: UIImage? + + /// 头像尺寸 let size: CGFloat + // MARK: - 状态 + + /// 是否显示图片选择器 @State private var isImagePickerPresented = false + // MARK: - 视图 + var body: some View { Button(action: { + // 点击按钮时显示图片选择器 isImagePickerPresented = true }) { ZStack { - // Avatar Image or Placeholder + // 显示选中的头像或默认占位图 if let selectedImage = selectedImage { + // 已选择的头像图片 Image(uiImage: selectedImage) .resizable() .scaledToFill() .frame(width: size, height: size) .clipShape(RoundedRectangle(cornerRadius: size * 0.1)) } else { - // Default avatar container + // 默认头像占位容器 Color.gray.opacity(0.1) .frame(width: size, height: size) .overlay( @@ -104,17 +163,22 @@ struct AvatarUploader: View { } } .frame(width: size, height: size) - .contentShape(Rectangle()) // Make the entire area tappable + // 使整个区域可点击 + .contentShape(Rectangle()) } - .buttonStyle(PlainButtonStyle()) // Remove button highlight effect + // 移除按钮默认高亮效果 + .buttonStyle(PlainButtonStyle()) + // 显示图片选择器 .sheet(isPresented: $isImagePickerPresented) { PhotoPicker( + // 绑定选中的图片 selectedImages: Binding( get: { [selectedImage].compactMap { $0 } }, set: { images in selectedImage = images.first } ), + // 限制只能选择一张图片 selectionLimit: 1 ) } diff --git a/wake/View/Components/Upload/Upload.swift b/wake/View/Components/Upload/Upload.swift new file mode 100644 index 0000000..402ac0f --- /dev/null +++ b/wake/View/Components/Upload/Upload.swift @@ -0,0 +1,354 @@ +import SwiftUI +import PhotosUI + +/// 上传响应数据结构体,用于解析服务器返回的上传URL和表单字段 +struct UploadResponse: Codable { + let url: String // 上传文件的目标URL + let fields: [String: String] // 上传所需的表单字段 +} + +/// 图片上传管理器,负责处理图片上传相关逻辑 +class ImageUploader: ObservableObject { + // MARK: - 发布属性 + @Published var isUploading = false // 是否正在上传 + @Published var uploadProgress: Double = 0 // 上传进度 + @Published var error: Error? // 上传错误信息 + + // 基础API地址 + private let baseURL = "https://api.memorywake.com/api/v1" + + /// 上传图片到服务器 + /// - Parameters: + /// - image: 要上传的图片 + /// - completion: 完成回调,返回上传结果 + func uploadImage(_ image: UIImage, completion: @escaping (Result) -> Void) { + // 1. 将图片转换为JPEG数据 + guard let imageData = image.jpegData(compressionQuality: 0.8) else { + completion(.failure(NSError(domain: "", code: -1, + userInfo: [NSLocalizedDescriptionKey: "图片数据转换失败"]))) + return + } + + // 2. 构建获取上传URL的请求 + guard let url = URL(string: "\(baseURL)/iam/file/generate-upload-url") else { + completion(.failure(NSError(domain: "", code: -1, + userInfo: [NSLocalizedDescriptionKey: "无效的URL"]))) + return + } + + var request = URLRequest(url: url) + request.httpMethod = "POST" + request.setValue("application/json", forHTTPHeaderField: "Content-Type") + + // 3. 发起获取上传URL的请求 + URLSession.shared.dataTask(with: request) { [weak self] data, response, error in + guard let self = self else { return } + + // 处理网络错误 + if let error = error { + DispatchQueue.main.async { completion(.failure(error)) } + return + } + + // 检查响应数据 + guard let data = data else { + let error = NSError(domain: "", code: -1, + userInfo: [NSLocalizedDescriptionKey: "未收到服务器响应"]) + DispatchQueue.main.async { completion(.failure(error)) } + return + } + + do { + // 4. 解析上传URL响应 + let uploadResponse = try JSONDecoder().decode(UploadResponse.self, from: data) + // 5. 开始实际上传文件 + self.uploadFile(to: uploadResponse.url, + with: uploadResponse.fields, + imageData: imageData, + completion: completion) + } catch { + DispatchQueue.main.async { completion(.failure(error)) } + } + }.resume() + } + + /// 实际上传文件到指定的URL + /// - Parameters: + /// - url: 上传URL + /// - fields: 上传所需的表单字段 + /// - imageData: 图片数据 + /// - completion: 完成回调 + private func uploadFile(to url: String, + with fields: [String: String], + imageData: Data, + completion: @escaping (Result) -> Void) { + + // 验证上传URL + guard let uploadURL = URL(string: url) else { + completion(.failure(NSError(domain: "", code: -1, + userInfo: [NSLocalizedDescriptionKey: "无效的上传URL"]))) + return + } + + // 配置上传请求 + var request = URLRequest(url: uploadURL) + request.httpMethod = "POST" + + // 设置multipart/form-data边界 + let boundary = "Boundary-\(UUID().uuidString)" + request.setValue("multipart/form-data; boundary=\(boundary)", + forHTTPHeaderField: "Content-Type") + + // 构建请求体 + var body = Data() + + // 添加表单字段 + for (key, value) in fields { + body.append("--\(boundary)\r\n".data(using: .utf8)!) + body.append("Content-Disposition: form-data; name=\"\(key)\"\r\n\r\n".data(using: .utf8)!) + body.append("\(value)\r\n".data(using: .utf8)!) + } + + // 添加图片数据 + let filename = "\(UUID().uuidString).jpg" + body.append("--\(boundary)\r\n".data(using: .utf8)!) + body.append("Content-Disposition: form-data; name=\"file\"; filename=\"\(filename)\"\r\n".data(using: .utf8)!) + body.append("Content-Type: image/jpeg\r\n\r\n".data(using: .utf8)!) + body.append(imageData) + body.append("\r\n--\(boundary)--\r\n".data(using: .utf8)!) + + request.httpBody = body + + // 执行上传任务 + URLSession.shared.dataTask(with: request) { _, _, error in + DispatchQueue.main.async { + if let error = error { + completion(.failure(error)) + } else { + completion(.success("上传成功")) + } + } + }.resume() + } +} + +/// 照片选择器,封装了系统相册选择功能 +struct PhotoPicker: UIViewControllerRepresentable { + // MARK: - 属性 + @Binding var selectedImages: [UIImage] // 绑定的已选图片数组 + let selectionLimit: Int // 最多可选图片数量 + let filter: PHPickerFilter // 图片过滤器 + var onUploadComplete: ((Result) -> Void)? = nil // 上传完成回调 + private let uploader = ImageUploader() // 图片上传器 + + // MARK: - 初始化方法 + init(selectedImages: Binding<[UIImage]>, + selectionLimit: Int = 1, + filter: PHPickerFilter = .images, + onUploadComplete: ((Result) -> Void)? = nil) { + self._selectedImages = selectedImages + self.selectionLimit = selectionLimit + self.filter = filter + self.onUploadComplete = onUploadComplete + } + + // MARK: - UIViewControllerRepresentable 协议方法 + + /// 创建并返回PHPickerViewController实例 + func makeUIViewController(context: Context) -> PHPickerViewController { + var configuration = PHPickerConfiguration(photoLibrary: PHPhotoLibrary.shared()) + configuration.filter = filter + configuration.selectionLimit = selectionLimit + configuration.preferredAssetRepresentationMode = .current + + let picker = PHPickerViewController(configuration: configuration) + picker.delegate = context.coordinator + return picker + } + + /// 更新视图控制器 + func updateUIViewController(_ uiViewController: PHPickerViewController, context: Context) {} + + /// 创建协调器 + func makeCoordinator() -> Coordinator { + Coordinator(self) + } + + // MARK: - 协调器类 + + /// 协调器,处理PHPickerViewController的代理方法 + class Coordinator: NSObject, PHPickerViewControllerDelegate { + let parent: PhotoPicker + + init(_ parent: PhotoPicker) { + self.parent = parent + } + + /// 用户完成图片选择时调用 + func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) { + parent.selectedImages.removeAll() + + let group = DispatchGroup() + var loadedImages: [Int: UIImage] = [:] + + // 加载选中的图片 + for (index, result) in results.enumerated() { + group.enter() + + // 检查是否支持加载图片 + if result.itemProvider.canLoadObject(ofClass: UIImage.self) { + result.itemProvider.loadObject(ofClass: UIImage.self) { [weak self] (image, error) in + if let image = image as? UIImage { + // 保存加载的图片 + loadedImages[index] = image + + // 立即上传图片 + self?.parent.uploader.uploadImage(image) { result in + self?.parent.onUploadComplete?(result) + } + } + group.leave() + } + } else { + group.leave() + } + } + + // 所有图片加载完成后的处理 + group.notify(queue: .main) { + // 按原始顺序排序图片 + let sortedImages = loadedImages.sorted { $0.key < $1.key }.map { $0.value } + self.parent.selectedImages.append(contentsOf: sortedImages) + + // 关闭选择器 + picker.dismiss(animated: true) + } + } + } +} + +// MARK: - 头像上传组件 + +/// 头像上传视图,提供头像选择、上传和显示功能 +struct AvatarUploader: View { + // MARK: - 属性 + @Binding var selectedImage: UIImage? // 当前选中的头像图片 + let size: CGFloat // 头像尺寸 + + // MARK: - 状态 + @State private var isImagePickerPresented = false // 是否显示图片选择器 + @State private var isUploading = false // 是否正在上传 + @State private var uploadError: Error? // 上传错误信息 + + // MARK: - 视图 + var body: some View { + Button(action: showImagePicker) { + ZStack { + // 显示选中的图片或默认占位图 + if let selectedImage = selectedImage { + // 已选中的头像图片 + Image(uiImage: selectedImage) + .resizable() + .scaledToFill() + .frame(width: size, height: size) + .clipShape(RoundedRectangle(cornerRadius: size * 0.1)) + } else { + // 默认头像占位图 + Color.gray.opacity(0.1) + .frame(width: size, height: size) + .overlay( + SVGImage(svgName: "Avatar") + .frame(width: size * 0.8, height: size * 0.8) + ) + .clipShape(RoundedRectangle(cornerRadius: size * 0.1)) + .overlay( + RoundedRectangle(cornerRadius: size * 0.1) + .stroke(Color.gray.opacity(0.3), lineWidth: 1) + ) + } + + // 上传加载指示器 + if isUploading { + ProgressView() + .progressViewStyle(CircularProgressViewStyle(tint: .white)) + .scaleEffect(1.5) + .frame(maxWidth: .infinity, maxHeight: .infinity) + .background(Color.black.opacity(0.5)) + .clipShape(RoundedRectangle(cornerRadius: size * 0.1)) + } + } + .frame(width: size, height: size) + .contentShape(Rectangle()) // 使整个区域可点击 + } + .buttonStyle(PlainButtonStyle()) // 移除按钮默认样式 + .alert("上传失败", isPresented: .constant(uploadError != nil)) { + Button("确定") { + uploadError = nil + } + } message: { + if let error = uploadError { + Text(error.localizedDescription) + } else { + Text("请重试") + } + } + .sheet(isPresented: $isImagePickerPresented) { + // 图片选择器 + PhotoPicker( + selectedImages: Binding( + get: { [selectedImage].compactMap { $0 } }, + set: { images in + selectedImage = images.first + } + ), + selectionLimit: 1, + onUploadComplete: handleUploadResult + ) + .onAppear { + isUploading = true + } + } + } + + // MARK: - 私有方法 + + /// 显示图片选择器 + private func showImagePicker() { + isImagePickerPresented = true + } + + /// 处理上传结果 + private func handleUploadResult(_ result: Result) { + isUploading = false + + switch result { + case .success(let message): + print("上传成功: \(message)") + case .failure(let error): + uploadError = error + print("上传失败: \(error.localizedDescription)") + } + } +} + +// MARK: - 预览提供程序 +#if DEBUG +struct AvatarUploader_Previews: PreviewProvider { + static var previews: some View { + VStack(spacing: 20) { + // 默认状态预览 + AvatarUploader(selectedImage: .constant(nil), size: 100) + .padding() + .previewDisplayName("默认状态") + + // 已选择图片状态预览 + AvatarUploader( + selectedImage: .constant(UIImage(systemName: "person.crop.circle.fill")), + size: 120 + ) + .padding() + .previewDisplayName("已选择图片") + } + } +} +#endif \ No newline at end of file From a4890a4d2591008fa0d15a68974cfacb5013361c Mon Sep 17 00:00:00 2001 From: jinyaqiu Date: Tue, 19 Aug 2025 16:32:26 +0800 Subject: [PATCH 2/7] =?UTF-8?q?feat:=20=E5=9B=BE=E7=89=87=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E4=BA=92=E8=8E=B7=E5=8F=96url?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UserInterfaceState.xcuserstate | Bin 119657 -> 119683 bytes wake/View/Components/Upload/Avatar.swift | 207 ++++++++-- wake/View/Components/Upload/Upload.swift | 354 ------------------ 3 files changed, 166 insertions(+), 395 deletions(-) diff --git a/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate b/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate index 145f50a500155887163755621b61f1598ab4d18a..3ac497c8595ec5c413042f9fef20165b2b820b3f 100644 GIT binary patch literal 119683 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 mk!9OXjKK_TcVqW${r_S9`%khY|L?!^`u}r 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 E0o1$d`v3p{ diff --git a/wake/View/Components/Upload/Avatar.swift b/wake/View/Components/Upload/Avatar.swift index 359836a..5f25271 100644 --- a/wake/View/Components/Upload/Avatar.swift +++ b/wake/View/Components/Upload/Avatar.swift @@ -1,6 +1,163 @@ import SwiftUI import PhotosUI +/// 上传管理器,处理图片上传 +/// 图片上传管理器 +class ImageUploader: ObservableObject { + private let baseURL = "https://api.memorywake.com/api/v1/file/generate-upload-url" + + func uploadImage(_ image: UIImage, completion: @escaping (Result) -> Void) { + print("🔄 开始准备上传图片...") + // 1. 将图片转换为Data + guard let imageData = image.jpegData(compressionQuality: 0.7) else { + let error = NSError(domain: "ImageError", code: -1, userInfo: [NSLocalizedDescriptionKey: "图片数据转换失败"]) + print("❌ 错误:\(error.localizedDescription)") + completion(.failure(error)) + return + } + + // 2. 检查URL是否有效 + guard let url = URL(string: baseURL) else { + let error = NSError(domain: "URLError", code: -1, userInfo: [NSLocalizedDescriptionKey: "无效的URL"]) + print("❌ 错误:\(error.localizedDescription)") + completion(.failure(error)) + return + } + + var request = URLRequest(url: url) + request.httpMethod = "POST" + request.setValue("application/json", forHTTPHeaderField: "Content-Type") + request.setValue("application/json", forHTTPHeaderField: "Accept") + request.setValue("Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJFZERTQSJ9.eyJqdGkiOjczNjM0ODY2MTE1MDc2NDY0NjQsImlkZW50aXR5IjoiNzM1MDQzOTY2MzExNjYxOTg4OCIsImV4cCI6MTc1NjE5NjgxNX0.hRC_So6LHuR6Gx-bDyO8aliVOd-Xumul8M7cydi2pTxHPweBx4421AfZ5BjGoEEwRZPIXJ5z7a1aDB7qvjpLCA", forHTTPHeaderField: "Authorization") + + // 3. 准备请求参数 + let fileName = "avatar_\(UUID().uuidString).jpg" + let parameters: [String: Any] = [ + "filename": fileName, + "content_type": "image/jpeg", + "file_size": imageData.count + ] + + do { + request.httpBody = try JSONSerialization.data(withJSONObject: parameters) + print("📤 准备上传请求,文件名: \(fileName), 大小: \(Double(imageData.count) / 1024.0) KB") + print("📡 请求参数: \(parameters)") + } catch { + print("❌ 序列化请求参数失败: \(error.localizedDescription)") + completion(.failure(error)) + return + } + + // 4. 打印调试信息 + print("🌐 请求URL: \(url.absoluteString)") + print("📋 请求头: \(request.allHTTPHeaderFields ?? [:])") + + // 5. 发起获取上传URL的请求 + print("🌐 正在获取上传链接...") + let task = URLSession.shared.dataTask(with: request) { [weak self] data, response, error in + // 切换到主线程处理响应 + DispatchQueue.main.async { + if let error = error { + print("❌ 请求失败: \(error.localizedDescription)") + completion(.failure(error)) + return + } + + guard let httpResponse = response as? HTTPURLResponse else { + let error = NSError(domain: "NetworkError", code: -1, userInfo: [NSLocalizedDescriptionKey: "无效的服务器响应"]) + print("❌ 错误:\(error.localizedDescription)") + completion(.failure(error)) + return + } + + print("📊 响应状态码: \(httpResponse.statusCode)") + print("📦 响应头: \(httpResponse.allHeaderFields)") + + guard let data = data else { + let error = NSError(domain: "NetworkError", code: -1, userInfo: [NSLocalizedDescriptionKey: "没有接收到数据"]) + print("❌ 错误:\(error.localizedDescription)") + completion(.failure(error)) + return + } + + // 打印原始响应数据 + if let responseString = String(data: data, encoding: .utf8) { + print("📡 原始响应数据: \(responseString)") + } + + // 5. 解析获取上传URL的响应 + do { + guard let json = try JSONSerialization.jsonObject(with: data) as? [String: Any] else { + throw NSError(domain: "ParseError", code: -1, userInfo: [NSLocalizedDescriptionKey: "响应数据格式错误"]) + } + + print("📋 解析后的JSON: \(json)") + + // 根据实际API响应结构调整这里的键名 + if let uploadUrlString = json["url"] as? String, + let uploadUrl = URL(string: uploadUrlString) { + print("✅ 成功获取上传链接: \(uploadUrlString)") + self?.uploadImageData(imageData, to: uploadUrl, fileName: fileName, completion: completion) + } else { + throw NSError(domain: "APIError", code: -1, userInfo: [NSLocalizedDescriptionKey: "无法获取上传链接: \(json)"]) + } + } catch { + print("❌ 解析响应数据失败: \(error.localizedDescription)") + completion(.failure(error)) + } + } + } + + task.resume() + } + + private func uploadImageData(_ data: Data, to url: URL, fileName: String, completion: @escaping (Result) -> Void) { + var request = URLRequest(url: url) + request.httpMethod = "PUT" + request.setValue("image/jpeg", forHTTPHeaderField: "Content-Type") + request.httpBody = data + + print("🚀 开始上传图片数据...") + + let task = URLSession.shared.dataTask(with: request) { _, response, error in + DispatchQueue.main.async { + if let error = error { + print("❌ 上传失败: \(error.localizedDescription)") + completion(.failure(error)) + return + } + + // 处理上传响应 + if let httpResponse = response as? HTTPURLResponse { + print("📊 上传响应状态码: \(httpResponse.statusCode)") + + if (200...299).contains(httpResponse.statusCode) { + let fileUrl = "https://your-cdn-domain.com/\(fileName)" // 替换为实际的CDN域名 + print("✅ 上传成功!文件URL: \(fileUrl)") + completion(.success(fileUrl)) + } else { + let errorMessage = "上传失败,状态码: \(httpResponse.statusCode)" + print("❌ \(errorMessage)") + let error = NSError(domain: "UploadError", + code: httpResponse.statusCode, + userInfo: [NSLocalizedDescriptionKey: errorMessage]) + completion(.failure(error)) + } + } else { + let errorMessage = "无效的服务器响应" + print("❌ \(errorMessage)") + let error = NSError(domain: "UploadError", + code: -1, + userInfo: [NSLocalizedDescriptionKey: errorMessage]) + completion(.failure(error)) + } + } + } + + task.resume() + } +} + /// 照片选择器,封装了系统相册选择功能 struct PhotoPicker: UIViewControllerRepresentable { // MARK: - 属性 @@ -14,13 +171,12 @@ struct PhotoPicker: UIViewControllerRepresentable { /// 图片过滤器,默认为图片类型 let filter: PHPickerFilter + /// 图片上传管理器 + private let uploader = ImageUploader() + // MARK: - 初始化方法 /// 初始化照片选择器 - /// - Parameters: - /// - selectedImages: 绑定的已选图片数组 - /// - selectionLimit: 最多可选图片数量,默认为1 - /// - filter: 图片过滤器,默认为.images init(selectedImages: Binding<[UIImage]>, selectionLimit: Int = 1, filter: PHPickerFilter = .images) { self._selectedImages = selectedImages self.selectionLimit = selectionLimit @@ -29,11 +185,7 @@ struct PhotoPicker: UIViewControllerRepresentable { // MARK: - UIViewControllerRepresentable 协议方法 - /// 创建并返回PHPickerViewController实例 - /// - Parameter context: 上下文 - /// - Returns: 配置好的PHPickerViewController func makeUIViewController(context: Context) -> PHPickerViewController { - // 配置照片选择器 var configuration = PHPickerConfiguration(photoLibrary: PHPhotoLibrary.shared()) configuration.filter = filter configuration.selectionLimit = selectionLimit @@ -44,54 +196,41 @@ struct PhotoPicker: UIViewControllerRepresentable { return picker } - /// 更新视图控制器 - /// - Parameters: - /// - uiViewController: 要更新的视图控制器 - /// - context: 上下文 func updateUIViewController(_ uiViewController: PHPickerViewController, context: Context) {} - /// 创建协调器 - /// - Returns: 协调器实例 func makeCoordinator() -> Coordinator { Coordinator(self) } // MARK: - 协调器类 - /// 协调器,处理PHPickerViewController的代理方法 class Coordinator: NSObject, PHPickerViewControllerDelegate { - /// 父视图引用 let parent: PhotoPicker - /// 初始化方法 - /// - Parameter parent: 父视图 init(_ parent: PhotoPicker) { self.parent = parent } - /// 用户完成图片选择时调用 - /// - Parameters: - /// - picker: 图片选择器 - /// - results: 选中的图片结果 func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) { - // 清空之前选中的图片 parent.selectedImages.removeAll() - // 使用DispatchGroup管理异步图片加载 let group = DispatchGroup() var loadedImages: [Int: UIImage] = [:] - // 遍历所有选中的图片 for (index, result) in results.enumerated() { group.enter() - // 检查是否支持加载图片 if result.itemProvider.canLoadObject(ofClass: UIImage.self) { - // 异步加载图片 result.itemProvider.loadObject(ofClass: UIImage.self) { (image, error) in if let image = image as? UIImage { // 保存加载的图片,保持原始顺序 loadedImages[index] = image + + // 上传图片 + self.parent.uploader.uploadImage(image) { result in + // 这里可以添加上传完成后的处理 + // 目前按需求暂时不处理 + } } group.leave() } @@ -100,14 +239,9 @@ struct PhotoPicker: UIViewControllerRepresentable { } } - // 所有图片加载完成后的处理 group.notify(queue: .main) { - // 按原始顺序排序图片 let sortedImages = loadedImages.sorted { $0.key < $1.key }.map { $0.value } - // 更新选中的图片数组 self.parent.selectedImages.append(contentsOf: sortedImages) - - // 关闭图片选择器 picker.dismiss(animated: true) } } @@ -135,20 +269,16 @@ struct AvatarUploader: View { var body: some View { Button(action: { - // 点击按钮时显示图片选择器 isImagePickerPresented = true }) { ZStack { - // 显示选中的头像或默认占位图 if let selectedImage = selectedImage { - // 已选择的头像图片 Image(uiImage: selectedImage) .resizable() .scaledToFill() .frame(width: size, height: size) .clipShape(RoundedRectangle(cornerRadius: size * 0.1)) } else { - // 默认头像占位容器 Color.gray.opacity(0.1) .frame(width: size, height: size) .overlay( @@ -163,22 +293,17 @@ struct AvatarUploader: View { } } .frame(width: size, height: size) - // 使整个区域可点击 .contentShape(Rectangle()) } - // 移除按钮默认高亮效果 .buttonStyle(PlainButtonStyle()) - // 显示图片选择器 .sheet(isPresented: $isImagePickerPresented) { PhotoPicker( - // 绑定选中的图片 selectedImages: Binding( get: { [selectedImage].compactMap { $0 } }, set: { images in selectedImage = images.first } ), - // 限制只能选择一张图片 selectionLimit: 1 ) } diff --git a/wake/View/Components/Upload/Upload.swift b/wake/View/Components/Upload/Upload.swift index 402ac0f..e69de29 100644 --- a/wake/View/Components/Upload/Upload.swift +++ b/wake/View/Components/Upload/Upload.swift @@ -1,354 +0,0 @@ -import SwiftUI -import PhotosUI - -/// 上传响应数据结构体,用于解析服务器返回的上传URL和表单字段 -struct UploadResponse: Codable { - let url: String // 上传文件的目标URL - let fields: [String: String] // 上传所需的表单字段 -} - -/// 图片上传管理器,负责处理图片上传相关逻辑 -class ImageUploader: ObservableObject { - // MARK: - 发布属性 - @Published var isUploading = false // 是否正在上传 - @Published var uploadProgress: Double = 0 // 上传进度 - @Published var error: Error? // 上传错误信息 - - // 基础API地址 - private let baseURL = "https://api.memorywake.com/api/v1" - - /// 上传图片到服务器 - /// - Parameters: - /// - image: 要上传的图片 - /// - completion: 完成回调,返回上传结果 - func uploadImage(_ image: UIImage, completion: @escaping (Result) -> Void) { - // 1. 将图片转换为JPEG数据 - guard let imageData = image.jpegData(compressionQuality: 0.8) else { - completion(.failure(NSError(domain: "", code: -1, - userInfo: [NSLocalizedDescriptionKey: "图片数据转换失败"]))) - return - } - - // 2. 构建获取上传URL的请求 - guard let url = URL(string: "\(baseURL)/iam/file/generate-upload-url") else { - completion(.failure(NSError(domain: "", code: -1, - userInfo: [NSLocalizedDescriptionKey: "无效的URL"]))) - return - } - - var request = URLRequest(url: url) - request.httpMethod = "POST" - request.setValue("application/json", forHTTPHeaderField: "Content-Type") - - // 3. 发起获取上传URL的请求 - URLSession.shared.dataTask(with: request) { [weak self] data, response, error in - guard let self = self else { return } - - // 处理网络错误 - if let error = error { - DispatchQueue.main.async { completion(.failure(error)) } - return - } - - // 检查响应数据 - guard let data = data else { - let error = NSError(domain: "", code: -1, - userInfo: [NSLocalizedDescriptionKey: "未收到服务器响应"]) - DispatchQueue.main.async { completion(.failure(error)) } - return - } - - do { - // 4. 解析上传URL响应 - let uploadResponse = try JSONDecoder().decode(UploadResponse.self, from: data) - // 5. 开始实际上传文件 - self.uploadFile(to: uploadResponse.url, - with: uploadResponse.fields, - imageData: imageData, - completion: completion) - } catch { - DispatchQueue.main.async { completion(.failure(error)) } - } - }.resume() - } - - /// 实际上传文件到指定的URL - /// - Parameters: - /// - url: 上传URL - /// - fields: 上传所需的表单字段 - /// - imageData: 图片数据 - /// - completion: 完成回调 - private func uploadFile(to url: String, - with fields: [String: String], - imageData: Data, - completion: @escaping (Result) -> Void) { - - // 验证上传URL - guard let uploadURL = URL(string: url) else { - completion(.failure(NSError(domain: "", code: -1, - userInfo: [NSLocalizedDescriptionKey: "无效的上传URL"]))) - return - } - - // 配置上传请求 - var request = URLRequest(url: uploadURL) - request.httpMethod = "POST" - - // 设置multipart/form-data边界 - let boundary = "Boundary-\(UUID().uuidString)" - request.setValue("multipart/form-data; boundary=\(boundary)", - forHTTPHeaderField: "Content-Type") - - // 构建请求体 - var body = Data() - - // 添加表单字段 - for (key, value) in fields { - body.append("--\(boundary)\r\n".data(using: .utf8)!) - body.append("Content-Disposition: form-data; name=\"\(key)\"\r\n\r\n".data(using: .utf8)!) - body.append("\(value)\r\n".data(using: .utf8)!) - } - - // 添加图片数据 - let filename = "\(UUID().uuidString).jpg" - body.append("--\(boundary)\r\n".data(using: .utf8)!) - body.append("Content-Disposition: form-data; name=\"file\"; filename=\"\(filename)\"\r\n".data(using: .utf8)!) - body.append("Content-Type: image/jpeg\r\n\r\n".data(using: .utf8)!) - body.append(imageData) - body.append("\r\n--\(boundary)--\r\n".data(using: .utf8)!) - - request.httpBody = body - - // 执行上传任务 - URLSession.shared.dataTask(with: request) { _, _, error in - DispatchQueue.main.async { - if let error = error { - completion(.failure(error)) - } else { - completion(.success("上传成功")) - } - } - }.resume() - } -} - -/// 照片选择器,封装了系统相册选择功能 -struct PhotoPicker: UIViewControllerRepresentable { - // MARK: - 属性 - @Binding var selectedImages: [UIImage] // 绑定的已选图片数组 - let selectionLimit: Int // 最多可选图片数量 - let filter: PHPickerFilter // 图片过滤器 - var onUploadComplete: ((Result) -> Void)? = nil // 上传完成回调 - private let uploader = ImageUploader() // 图片上传器 - - // MARK: - 初始化方法 - init(selectedImages: Binding<[UIImage]>, - selectionLimit: Int = 1, - filter: PHPickerFilter = .images, - onUploadComplete: ((Result) -> Void)? = nil) { - self._selectedImages = selectedImages - self.selectionLimit = selectionLimit - self.filter = filter - self.onUploadComplete = onUploadComplete - } - - // MARK: - UIViewControllerRepresentable 协议方法 - - /// 创建并返回PHPickerViewController实例 - func makeUIViewController(context: Context) -> PHPickerViewController { - var configuration = PHPickerConfiguration(photoLibrary: PHPhotoLibrary.shared()) - configuration.filter = filter - configuration.selectionLimit = selectionLimit - configuration.preferredAssetRepresentationMode = .current - - let picker = PHPickerViewController(configuration: configuration) - picker.delegate = context.coordinator - return picker - } - - /// 更新视图控制器 - func updateUIViewController(_ uiViewController: PHPickerViewController, context: Context) {} - - /// 创建协调器 - func makeCoordinator() -> Coordinator { - Coordinator(self) - } - - // MARK: - 协调器类 - - /// 协调器,处理PHPickerViewController的代理方法 - class Coordinator: NSObject, PHPickerViewControllerDelegate { - let parent: PhotoPicker - - init(_ parent: PhotoPicker) { - self.parent = parent - } - - /// 用户完成图片选择时调用 - func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) { - parent.selectedImages.removeAll() - - let group = DispatchGroup() - var loadedImages: [Int: UIImage] = [:] - - // 加载选中的图片 - for (index, result) in results.enumerated() { - group.enter() - - // 检查是否支持加载图片 - if result.itemProvider.canLoadObject(ofClass: UIImage.self) { - result.itemProvider.loadObject(ofClass: UIImage.self) { [weak self] (image, error) in - if let image = image as? UIImage { - // 保存加载的图片 - loadedImages[index] = image - - // 立即上传图片 - self?.parent.uploader.uploadImage(image) { result in - self?.parent.onUploadComplete?(result) - } - } - group.leave() - } - } else { - group.leave() - } - } - - // 所有图片加载完成后的处理 - group.notify(queue: .main) { - // 按原始顺序排序图片 - let sortedImages = loadedImages.sorted { $0.key < $1.key }.map { $0.value } - self.parent.selectedImages.append(contentsOf: sortedImages) - - // 关闭选择器 - picker.dismiss(animated: true) - } - } - } -} - -// MARK: - 头像上传组件 - -/// 头像上传视图,提供头像选择、上传和显示功能 -struct AvatarUploader: View { - // MARK: - 属性 - @Binding var selectedImage: UIImage? // 当前选中的头像图片 - let size: CGFloat // 头像尺寸 - - // MARK: - 状态 - @State private var isImagePickerPresented = false // 是否显示图片选择器 - @State private var isUploading = false // 是否正在上传 - @State private var uploadError: Error? // 上传错误信息 - - // MARK: - 视图 - var body: some View { - Button(action: showImagePicker) { - ZStack { - // 显示选中的图片或默认占位图 - if let selectedImage = selectedImage { - // 已选中的头像图片 - Image(uiImage: selectedImage) - .resizable() - .scaledToFill() - .frame(width: size, height: size) - .clipShape(RoundedRectangle(cornerRadius: size * 0.1)) - } else { - // 默认头像占位图 - Color.gray.opacity(0.1) - .frame(width: size, height: size) - .overlay( - SVGImage(svgName: "Avatar") - .frame(width: size * 0.8, height: size * 0.8) - ) - .clipShape(RoundedRectangle(cornerRadius: size * 0.1)) - .overlay( - RoundedRectangle(cornerRadius: size * 0.1) - .stroke(Color.gray.opacity(0.3), lineWidth: 1) - ) - } - - // 上传加载指示器 - if isUploading { - ProgressView() - .progressViewStyle(CircularProgressViewStyle(tint: .white)) - .scaleEffect(1.5) - .frame(maxWidth: .infinity, maxHeight: .infinity) - .background(Color.black.opacity(0.5)) - .clipShape(RoundedRectangle(cornerRadius: size * 0.1)) - } - } - .frame(width: size, height: size) - .contentShape(Rectangle()) // 使整个区域可点击 - } - .buttonStyle(PlainButtonStyle()) // 移除按钮默认样式 - .alert("上传失败", isPresented: .constant(uploadError != nil)) { - Button("确定") { - uploadError = nil - } - } message: { - if let error = uploadError { - Text(error.localizedDescription) - } else { - Text("请重试") - } - } - .sheet(isPresented: $isImagePickerPresented) { - // 图片选择器 - PhotoPicker( - selectedImages: Binding( - get: { [selectedImage].compactMap { $0 } }, - set: { images in - selectedImage = images.first - } - ), - selectionLimit: 1, - onUploadComplete: handleUploadResult - ) - .onAppear { - isUploading = true - } - } - } - - // MARK: - 私有方法 - - /// 显示图片选择器 - private func showImagePicker() { - isImagePickerPresented = true - } - - /// 处理上传结果 - private func handleUploadResult(_ result: Result) { - isUploading = false - - switch result { - case .success(let message): - print("上传成功: \(message)") - case .failure(let error): - uploadError = error - print("上传失败: \(error.localizedDescription)") - } - } -} - -// MARK: - 预览提供程序 -#if DEBUG -struct AvatarUploader_Previews: PreviewProvider { - static var previews: some View { - VStack(spacing: 20) { - // 默认状态预览 - AvatarUploader(selectedImage: .constant(nil), size: 100) - .padding() - .previewDisplayName("默认状态") - - // 已选择图片状态预览 - AvatarUploader( - selectedImage: .constant(UIImage(systemName: "person.crop.circle.fill")), - size: 120 - ) - .padding() - .previewDisplayName("已选择图片") - } - } -} -#endif \ No newline at end of file From a207b7895d6a7d2afa610bc32dcd518c985ca756 Mon Sep 17 00:00:00 2001 From: jinyaqiu Date: Tue, 19 Aug 2025 18:28:49 +0800 Subject: [PATCH 3/7] =?UTF-8?q?feat:=20=E7=A1=AE=E8=AE=A4=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UserInterfaceState.xcuserstate | Bin 119683 -> 122469 bytes wake/Utils/APIConfig.swift | 19 ++ wake/View/Components/Upload/Avatar.swift | 281 ++++++------------ wake/View/Components/Upload/Compression.swift | 0 .../Upload/ImageUploaderGetID.swift | 232 +++++++++++++++ 5 files changed, 343 insertions(+), 189 deletions(-) create mode 100644 wake/Utils/APIConfig.swift create mode 100644 wake/View/Components/Upload/Compression.swift create mode 100644 wake/View/Components/Upload/ImageUploaderGetID.swift diff --git a/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate b/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate index 3ac497c8595ec5c413042f9fef20165b2b820b3f..8deb0a0f963332ff0d3ba10a31b2ca2de070da25 100644 GIT binary patch literal 122469 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 literal 119683 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 mk!9OXjKK_TcVqW${r_S9`%khY|L?!^`u}) -> Void) { - print("🔄 开始准备上传图片...") - // 1. 将图片转换为Data - guard let imageData = image.jpegData(compressionQuality: 0.7) else { - let error = NSError(domain: "ImageError", code: -1, userInfo: [NSLocalizedDescriptionKey: "图片数据转换失败"]) - print("❌ 错误:\(error.localizedDescription)") - completion(.failure(error)) - return - } - - // 2. 检查URL是否有效 - guard let url = URL(string: baseURL) else { - let error = NSError(domain: "URLError", code: -1, userInfo: [NSLocalizedDescriptionKey: "无效的URL"]) - print("❌ 错误:\(error.localizedDescription)") - completion(.failure(error)) - return - } - - var request = URLRequest(url: url) - request.httpMethod = "POST" - request.setValue("application/json", forHTTPHeaderField: "Content-Type") - request.setValue("application/json", forHTTPHeaderField: "Accept") - request.setValue("Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJFZERTQSJ9.eyJqdGkiOjczNjM0ODY2MTE1MDc2NDY0NjQsImlkZW50aXR5IjoiNzM1MDQzOTY2MzExNjYxOTg4OCIsImV4cCI6MTc1NjE5NjgxNX0.hRC_So6LHuR6Gx-bDyO8aliVOd-Xumul8M7cydi2pTxHPweBx4421AfZ5BjGoEEwRZPIXJ5z7a1aDB7qvjpLCA", forHTTPHeaderField: "Authorization") - - // 3. 准备请求参数 - let fileName = "avatar_\(UUID().uuidString).jpg" - let parameters: [String: Any] = [ - "filename": fileName, - "content_type": "image/jpeg", - "file_size": imageData.count - ] - - do { - request.httpBody = try JSONSerialization.data(withJSONObject: parameters) - print("📤 准备上传请求,文件名: \(fileName), 大小: \(Double(imageData.count) / 1024.0) KB") - print("📡 请求参数: \(parameters)") - } catch { - print("❌ 序列化请求参数失败: \(error.localizedDescription)") - completion(.failure(error)) - return - } - - // 4. 打印调试信息 - print("🌐 请求URL: \(url.absoluteString)") - print("📋 请求头: \(request.allHTTPHeaderFields ?? [:])") - - // 5. 发起获取上传URL的请求 - print("🌐 正在获取上传链接...") - let task = URLSession.shared.dataTask(with: request) { [weak self] data, response, error in - // 切换到主线程处理响应 - DispatchQueue.main.async { - if let error = error { - print("❌ 请求失败: \(error.localizedDescription)") - completion(.failure(error)) - return - } - - guard let httpResponse = response as? HTTPURLResponse else { - let error = NSError(domain: "NetworkError", code: -1, userInfo: [NSLocalizedDescriptionKey: "无效的服务器响应"]) - print("❌ 错误:\(error.localizedDescription)") - completion(.failure(error)) - return - } - - print("📊 响应状态码: \(httpResponse.statusCode)") - print("📦 响应头: \(httpResponse.allHeaderFields)") - - guard let data = data else { - let error = NSError(domain: "NetworkError", code: -1, userInfo: [NSLocalizedDescriptionKey: "没有接收到数据"]) - print("❌ 错误:\(error.localizedDescription)") - completion(.failure(error)) - return - } - - // 打印原始响应数据 - if let responseString = String(data: data, encoding: .utf8) { - print("📡 原始响应数据: \(responseString)") - } - - // 5. 解析获取上传URL的响应 - do { - guard let json = try JSONSerialization.jsonObject(with: data) as? [String: Any] else { - throw NSError(domain: "ParseError", code: -1, userInfo: [NSLocalizedDescriptionKey: "响应数据格式错误"]) - } - - print("📋 解析后的JSON: \(json)") - - // 根据实际API响应结构调整这里的键名 - if let uploadUrlString = json["url"] as? String, - let uploadUrl = URL(string: uploadUrlString) { - print("✅ 成功获取上传链接: \(uploadUrlString)") - self?.uploadImageData(imageData, to: uploadUrl, fileName: fileName, completion: completion) - } else { - throw NSError(domain: "APIError", code: -1, userInfo: [NSLocalizedDescriptionKey: "无法获取上传链接: \(json)"]) - } - } catch { - print("❌ 解析响应数据失败: \(error.localizedDescription)") - completion(.failure(error)) - } - } - } - - task.resume() - } - - private func uploadImageData(_ data: Data, to url: URL, fileName: String, completion: @escaping (Result) -> Void) { - var request = URLRequest(url: url) - request.httpMethod = "PUT" - request.setValue("image/jpeg", forHTTPHeaderField: "Content-Type") - request.httpBody = data - - print("🚀 开始上传图片数据...") - - let task = URLSession.shared.dataTask(with: request) { _, response, error in - DispatchQueue.main.async { - if let error = error { - print("❌ 上传失败: \(error.localizedDescription)") - completion(.failure(error)) - return - } - - // 处理上传响应 - if let httpResponse = response as? HTTPURLResponse { - print("📊 上传响应状态码: \(httpResponse.statusCode)") - - if (200...299).contains(httpResponse.statusCode) { - let fileUrl = "https://your-cdn-domain.com/\(fileName)" // 替换为实际的CDN域名 - print("✅ 上传成功!文件URL: \(fileUrl)") - completion(.success(fileUrl)) - } else { - let errorMessage = "上传失败,状态码: \(httpResponse.statusCode)" - print("❌ \(errorMessage)") - let error = NSError(domain: "UploadError", - code: httpResponse.statusCode, - userInfo: [NSLocalizedDescriptionKey: errorMessage]) - completion(.failure(error)) - } - } else { - let errorMessage = "无效的服务器响应" - print("❌ \(errorMessage)") - let error = NSError(domain: "UploadError", - code: -1, - userInfo: [NSLocalizedDescriptionKey: errorMessage]) - completion(.failure(error)) - } - } - } - - task.resume() - } -} - /// 照片选择器,封装了系统相册选择功能 +/// 使用UIViewControllerRepresentable包装PHPickerViewController,提供SwiftUI兼容的图片选择界面 struct PhotoPicker: UIViewControllerRepresentable { - // MARK: - 属性 + // MARK: - Properties - /// 绑定的已选图片数组 + /// 绑定的已选图片数组,用于存储用户选择的图片 @Binding var selectedImages: [UIImage] - /// 最多可选图片数量 + /// 最多可选图片数量,默认为1 let selectionLimit: Int - /// 图片过滤器,默认为图片类型 + /// 图片过滤器,默认为图片类型,可过滤特定类型的媒体 let filter: PHPickerFilter - /// 图片上传管理器 - private let uploader = ImageUploader() + /// 图片上传完成回调,返回上传结果或错误 + var onImageUploaded: ((Result) -> Void)? - // MARK: - 初始化方法 + // MARK: - Initialization /// 初始化照片选择器 - init(selectedImages: Binding<[UIImage]>, selectionLimit: Int = 1, filter: PHPickerFilter = .images) { + /// - Parameters: + /// - selectedImages: 绑定的图片数组,用于接收用户选择的图片 + /// - selectionLimit: 最多可选图片数量,默认为1 + /// - filter: 媒体类型过滤器,默认为图片 + /// - onImageUploaded: 图片上传完成后的回调闭包 + init( + selectedImages: Binding<[UIImage]>, + selectionLimit: Int = 1, + filter: PHPickerFilter = .images, + onImageUploaded: ((Result) -> Void)? = nil + ) { self._selectedImages = selectedImages self.selectionLimit = selectionLimit self.filter = filter + self.onImageUploaded = onImageUploaded } - // MARK: - UIViewControllerRepresentable 协议方法 + // MARK: - UIViewControllerRepresentable + /// 创建并返回配置好的PHPickerViewController func makeUIViewController(context: Context) -> PHPickerViewController { var configuration = PHPickerConfiguration(photoLibrary: PHPhotoLibrary.shared()) configuration.filter = filter @@ -196,89 +52,131 @@ struct PhotoPicker: UIViewControllerRepresentable { return picker } + /// 更新视图控制器(空实现,因为不需要更新) func updateUIViewController(_ uiViewController: PHPickerViewController, context: Context) {} + /// 创建协调器,用于处理PHPickerViewController的代理方法 func makeCoordinator() -> Coordinator { Coordinator(self) } - // MARK: - 协调器类 + // MARK: - Coordinator + /// 协调器类,处理PHPickerViewController的代理方法 class Coordinator: NSObject, PHPickerViewControllerDelegate { + /// 对父视图的弱引用 let parent: PhotoPicker + /// 图片上传器实例 + private let uploader = ImageUploaderGetID() + init(_ parent: PhotoPicker) { self.parent = parent } + /// 当用户完成图片选择时调用 + /// - Parameters: + /// - picker: 图片选择器实例 + /// - results: 用户选择的图片结果数组 func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) { + // 清空已选图片 parent.selectedImages.removeAll() + // 使用DispatchGroup管理多个异步图片加载任务 let group = DispatchGroup() - var loadedImages: [Int: UIImage] = [:] + var loadedImages: [Int: UIImage] = [:] // 用于保持图片顺序的字典 + // 遍历所有选中的图片 for (index, result) in results.enumerated() { - group.enter() + group.enter() // 进入组 + // 检查是否可以加载图片 if result.itemProvider.canLoadObject(ofClass: UIImage.self) { - result.itemProvider.loadObject(ofClass: UIImage.self) { (image, error) in + // 异步加载图片 + result.itemProvider.loadObject(ofClass: UIImage.self) { [weak self] (image, error) in if let image = image as? UIImage { - // 保存加载的图片,保持原始顺序 + // 将加载的图片存入字典,保持原始顺序 loadedImages[index] = image // 上传图片 - self.parent.uploader.uploadImage(image) { result in - // 这里可以添加上传完成后的处理 - // 目前按需求暂时不处理 + self?.uploader.uploadImage(image) { result in + // 在主线程中调用上传完成回调 + DispatchQueue.main.async { + switch result { + case .success(let uploadResult): + print("✅ 上传成功!fileId: \(uploadResult.fileId)") + print("📂 文件信息:") + print(" - 文件名: \(uploadResult.fileName)") + print(" - 文件大小: \(uploadResult.fileSize) 字节") + print(" - 文件URL: \(uploadResult.fileUrl)") + + // 调用上传完成回调 + self?.parent.onImageUploaded?(.success(uploadResult)) + + case .failure(let error): + print("❌ 上传失败: \(error.localizedDescription)") + // 调用上传完成回调,传递错误 + self?.parent.onImageUploaded?(.failure(error)) + } + } } } - group.leave() + group.leave() // 离开组 } } else { - group.leave() + group.leave() // 如果无法加载图片,也离开组 } } + // 所有图片加载完成后的处理 group.notify(queue: .main) { + // 按原始顺序排序并更新图片数组 let sortedImages = loadedImages.sorted { $0.key < $1.key }.map { $0.value } self.parent.selectedImages.append(contentsOf: sortedImages) + + // 关闭图片选择器 picker.dismiss(animated: true) } } } } -// MARK: - 头像上传组件 +// MARK: - AvatarUploader /// 头像上传视图,提供头像选择功能 +/// 封装了头像显示和选择逻辑,支持点击选择新头像 struct AvatarUploader: View { - // MARK: - 属性 + // MARK: - Properties - /// 当前选中的头像图片 + /// 绑定的当前选中头像图片 @Binding var selectedImage: UIImage? - /// 头像尺寸 + /// 头像显示尺寸 let size: CGFloat - // MARK: - 状态 + /// 上传完成回调,返回上传结果或错误 + var onUploadComplete: ((Result) -> Void)? - /// 是否显示图片选择器 + // MARK: - State + + /// 控制图片选择器的显示状态 @State private var isImagePickerPresented = false - // MARK: - 视图 + // MARK: - Body var body: some View { - Button(action: { - isImagePickerPresented = true - }) { + // 头像按钮,点击后显示图片选择器 + Button(action: { isImagePickerPresented = true }) { ZStack { if let selectedImage = selectedImage { + // 显示已选中的头像 Image(uiImage: selectedImage) .resizable() .scaledToFill() .frame(width: size, height: size) .clipShape(RoundedRectangle(cornerRadius: size * 0.1)) } else { + // 默认头像占位视图 Color.gray.opacity(0.1) .frame(width: size, height: size) .overlay( @@ -293,10 +191,11 @@ struct AvatarUploader: View { } } .frame(width: size, height: size) - .contentShape(Rectangle()) + .contentShape(Rectangle()) // 确保整个区域都可点击 } - .buttonStyle(PlainButtonStyle()) + .buttonStyle(PlainButtonStyle()) // 使用无样式按钮 .sheet(isPresented: $isImagePickerPresented) { + // 显示图片选择器 PhotoPicker( selectedImages: Binding( get: { [selectedImage].compactMap { $0 } }, @@ -304,7 +203,11 @@ struct AvatarUploader: View { selectedImage = images.first } ), - selectionLimit: 1 + selectionLimit: 1, // 限制只能选择一张图片 + onImageUploaded: { result in + // 图片上传完成后的处理 + onUploadComplete?(result) + } ) } } diff --git a/wake/View/Components/Upload/Compression.swift b/wake/View/Components/Upload/Compression.swift new file mode 100644 index 0000000..e69de29 diff --git a/wake/View/Components/Upload/ImageUploaderGetID.swift b/wake/View/Components/Upload/ImageUploaderGetID.swift new file mode 100644 index 0000000..4ea82f4 --- /dev/null +++ b/wake/View/Components/Upload/ImageUploaderGetID.swift @@ -0,0 +1,232 @@ +import SwiftUI +import PhotosUI + +/// 处理图片上传到远程服务器的类 +/// 支持上传图片并获取服务器返回的file_id +public class ImageUploaderGetID: ObservableObject { + // MARK: - 类型定义 + + /// 上传结果 + public struct UploadResult { + public let fileUrl: String + public let fileName: String + public let fileSize: Int + public let fileId: String + + public init(fileUrl: String, fileName: String, fileSize: Int, fileId: String) { + self.fileUrl = fileUrl + self.fileName = fileName + self.fileSize = fileSize + self.fileId = fileId + } + } + + /// 上传过程中可能发生的错误 + public enum UploadError: LocalizedError { + case invalidImageData + case invalidURL + case serverError(String) + case invalidResponse + case uploadFailed(Error?) + case invalidFileId + + public var errorDescription: String? { + switch self { + case .invalidImageData: + return "无效的图片数据" + case .invalidURL: + return "无效的URL" + case .serverError(let message): + return "服务器错误: \(message)" + case .invalidResponse: + return "无效的服务器响应" + case .uploadFailed(let error): + return "上传失败: \(error?.localizedDescription ?? "未知错误")" + case .invalidFileId: + return "无效的文件ID" + } + } + } + + // MARK: - 属性 + + private let session: URLSession + private let apiConfig: APIConfig.Type + + // MARK: - 初始化方法 + + /// 初始化方法 + /// - Parameters: + /// - session: 可选的URLSession,用于测试依赖注入 + /// - apiConfig: 可选的API配置,用于测试依赖注入 + public init(session: URLSession = .shared, apiConfig: APIConfig.Type = APIConfig.self) { + self.session = session + self.apiConfig = apiConfig + } + + // MARK: - 公开方法 + + /// 上传图片到服务器 + /// - Parameters: + /// - image: 要上传的图片 + /// - completion: 完成回调,返回Result类型的结果 + public func uploadImage(_ image: UIImage, completion: @escaping (Result) -> Void) { + print("🔄 开始准备上传图片...") + + // 1. 转换图片为Data + guard let imageData = image.jpegData(compressionQuality: 0.7) else { + let error = UploadError.invalidImageData + print("❌ 错误:\(error.localizedDescription)") + completion(.failure(error)) + return + } + + // 2. 获取上传URL + getUploadURL(for: imageData) { [weak self] result in + switch result { + case .success((let fileId, let uploadURL)): + // 3. 确认上传 + self?.confirmUpload(fileId: fileId, fileName: "avatar_\(UUID().uuidString).jpg", fileSize: imageData.count) { confirmResult in + completion(confirmResult) + } + case .failure(let error): + completion(.failure(error)) + } + } + } + + // MARK: - 私有方法 + + /// 获取上传URL + private func getUploadURL(for imageData: Data, completion: @escaping (Result<(fileId: String, uploadURL: URL), Error>) -> Void) { + let fileName = "avatar_\(UUID().uuidString).jpg" + let parameters: [String: Any] = [ + "filename": fileName, + "content_type": "image/jpeg", + "file_size": imageData.count + ] + + let urlString = "\(apiConfig.baseURL)/file/generate-upload-url" + guard let url = URL(string: urlString) else { + completion(.failure(UploadError.invalidURL)) + return + } + + var request = URLRequest(url: url) + request.httpMethod = "POST" + request.allHTTPHeaderFields = apiConfig.authHeaders + + do { + request.httpBody = try JSONSerialization.data(withJSONObject: parameters) + print("📤 准备上传请求,文件名: \(fileName), 大小: \(Double(imageData.count) / 1024.0) KB") + } catch { + print("❌ 序列化请求参数失败: \(error.localizedDescription)") + completion(.failure(error)) + return + } + + let task = session.dataTask(with: request) { data, response, error in + if let error = error { + completion(.failure(UploadError.uploadFailed(error))) + return + } + + guard let httpResponse = response as? HTTPURLResponse else { + completion(.failure(UploadError.invalidResponse)) + return + } + + guard let data = data else { + completion(.failure(UploadError.invalidResponse)) + return + } + + // 打印调试信息 + if let responseString = String(data: data, encoding: .utf8) { + print("📥 获取上传URL响应: \(responseString)") + } + + do { + guard let json = try JSONSerialization.jsonObject(with: data) as? [String: Any], + let dataDict = json["data"] as? [String: Any], + let fileId = dataDict["file_id"] as? String, + let uploadURLString = dataDict["upload_url"] as? String, + let uploadURL = URL(string: uploadURLString) else { + throw UploadError.invalidResponse + } + + completion(.success((fileId: fileId, uploadURL: uploadURL))) + } catch { + completion(.failure(UploadError.invalidResponse)) + } + } + + task.resume() + } + + /// 确认上传 + private func confirmUpload(fileId: String, fileName: String, fileSize: Int, completion: @escaping (Result) -> Void) { + let urlString = "\(apiConfig.baseURL)/file/confirm-upload" + guard let url = URL(string: urlString) else { + completion(.failure(UploadError.invalidURL)) + return + } + + var request = URLRequest(url: url) + request.httpMethod = "POST" + request.allHTTPHeaderFields = apiConfig.authHeaders + + let requestBody: [String: Any] = ["file_id": fileId] + + do { + request.httpBody = try JSONSerialization.data(withJSONObject: requestBody) + } catch { + completion(.failure(error)) + return + } + + let task = session.dataTask(with: request) { data, response, error in + if let error = error { + completion(.failure(UploadError.uploadFailed(error))) + return + } + + guard let httpResponse = response as? HTTPURLResponse, + (200...299).contains(httpResponse.statusCode) else { + completion(.failure(UploadError.serverError("确认上传失败,状态码: \((response as? HTTPURLResponse)?.statusCode ?? -1)"))) + return + } + + // 创建上传结果 + let uploadResult = UploadResult( + fileUrl: "\(self.apiConfig.baseURL)/files/\(fileId)", + fileName: fileName, + fileSize: fileSize, + fileId: fileId + ) + + print("✅ 图片上传并确认成功,fileId: \(fileId)") + completion(.success(uploadResult)) + } + + task.resume() + } +} + +// MARK: - 响应模型 + +struct UploadURLResponse: Codable { + let code: Int + let message: String + let data: UploadData + + struct UploadData: Codable { + let fileId: String + let uploadUrl: String + + enum CodingKeys: String, CodingKey { + case fileId = "file_id" + case uploadUrl = "upload_url" + } + } +} From 5611df88b229ccd861ae1789a8597ac9c494dffc Mon Sep 17 00:00:00 2001 From: jinyaqiu Date: Tue, 19 Aug 2025 18:53:17 +0800 Subject: [PATCH 4/7] =?UTF-8?q?feat:=20=E7=B4=A0=E6=9D=90=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UserInterfaceState.xcuserstate | Bin 122469 -> 122452 bytes wake/View/Components/Upload/Avatar.swift | 121 +++++++++++++----- .../Components/Upload/MaterialService.swift | 62 +++++++++ 3 files changed, 149 insertions(+), 34 deletions(-) create mode 100644 wake/View/Components/Upload/MaterialService.swift diff --git a/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate b/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate index 8deb0a0f963332ff0d3ba10a31b2ca2de070da25..79e8ee05c88bc76d047d77714944190cd0cd28e4 100644 GIT binary patch delta 47195 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 Ef0TnzQ2+n{ delta 47723 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

@|L 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 a=) -> Void)? + var onImageUploaded: ((Result) -> Void)? // MARK: - Initialization @@ -30,7 +36,7 @@ struct PhotoPicker: UIViewControllerRepresentable { selectedImages: Binding<[UIImage]>, selectionLimit: Int = 1, filter: PHPickerFilter = .images, - onImageUploaded: ((Result) -> Void)? = nil + onImageUploaded: ((Result) -> Void)? = nil ) { self._selectedImages = selectedImages self.selectionLimit = selectionLimit @@ -75,66 +81,113 @@ struct PhotoPicker: UIViewControllerRepresentable { } /// 当用户完成图片选择时调用 - /// - Parameters: - /// - picker: 图片选择器实例 - /// - results: 用户选择的图片结果数组 func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) { // 清空已选图片 parent.selectedImages.removeAll() - // 使用DispatchGroup管理多个异步图片加载任务 + // 使用DispatchGroup管理多个异步任务 let group = DispatchGroup() var loadedImages: [Int: UIImage] = [:] // 用于保持图片顺序的字典 + var uploadResults: [Int: (original: ImageUploaderGetID.UploadResult?, + compressed: ImageUploaderGetID.UploadResult?)] = [:] // 遍历所有选中的图片 for (index, result) in results.enumerated() { group.enter() // 进入组 - // 检查是否可以加载图片 if result.itemProvider.canLoadObject(ofClass: UIImage.self) { - // 异步加载图片 result.itemProvider.loadObject(ofClass: UIImage.self) { [weak self] (image, error) in - if let image = image as? UIImage { - // 将加载的图片存入字典,保持原始顺序 - loadedImages[index] = image + guard let self = self, let image = image as? UIImage else { + group.leave() + return + } + + // 1. 保存原始图片 + loadedImages[index] = image + + // 2. 压缩图片(质量压缩到50%) + guard let compressedImage = image.jpegData(compressionQuality: 0.5).flatMap(UIImage.init(data:)) else { + group.leave() + return + } + + // 3. 上传原图 + self.uploader.uploadImage(image) { [weak self] originalResult in + guard let self = self else { + group.leave() + return + } - // 上传图片 - self?.uploader.uploadImage(image) { result in - // 在主线程中调用上传完成回调 - DispatchQueue.main.async { - switch result { - case .success(let uploadResult): - print("✅ 上传成功!fileId: \(uploadResult.fileId)") - print("📂 文件信息:") - print(" - 文件名: \(uploadResult.fileName)") - print(" - 文件大小: \(uploadResult.fileSize) 字节") - print(" - 文件URL: \(uploadResult.fileUrl)") + switch originalResult { + case .success(let originalUploadResult): + // 4. 原图上传成功后上传压缩图 + self.uploader.uploadImage(compressedImage) { compressedResult in + defer { group.leave() } + + switch compressedResult { + case .success(let compressedUploadResult): + // 保存两个上传结果 + uploadResults[index] = (originalUploadResult, compressedUploadResult) + print("✅ 原图和压缩图上传成功!") + print("📂 原图信息:") + print(" - 文件ID: \(originalUploadResult.fileId)") + print(" - 文件大小: \(originalUploadResult.fileSize) 字节") + print("📦 压缩图信息:") + print(" - 文件ID: \(compressedUploadResult.fileId)") + print(" - 文件大小: \(compressedUploadResult.fileSize) 字节") - // 调用上传完成回调 - self?.parent.onImageUploaded?(.success(uploadResult)) + // 使用MaterialService上传文件信息到后端 + MaterialService.shared.uploadMaterialInfo( + fileId: originalUploadResult.fileId, + previewFileId: compressedUploadResult.fileId + ) { success, errorMessage in + if success { + print("✅ 文件信息上传成功 素材上传成功!!!!!") + } else if let errorMessage = errorMessage { + print("❌ 文件信息上传失败: \(errorMessage)") + } + } case .failure(let error): - print("❌ 上传失败: \(error.localizedDescription)") - // 调用上传完成回调,传递错误 - self?.parent.onImageUploaded?(.failure(error)) + print("❌ 压缩图上传失败: \(error.localizedDescription)") + uploadResults[index] = (originalUploadResult, nil) } } + + case .failure(let error): + print("❌ 原图上传失败: \(error.localizedDescription)") + group.leave() } } - group.leave() // 离开组 } } else { - group.leave() // 如果无法加载图片,也离开组 + group.leave() } } - // 所有图片加载完成后的处理 - group.notify(queue: .main) { - // 按原始顺序排序并更新图片数组 + // 所有上传任务完成后的处理 + group.notify(queue: .main) { [weak self] in + guard let self = self else { return } + + // 1. 更新选中的图片(只显示原图) let sortedImages = loadedImages.sorted { $0.key < $1.key }.map { $0.value } self.parent.selectedImages.append(contentsOf: sortedImages) - // 关闭图片选择器 + // 2. 检查是否所有上传都成功 + if let firstResult = uploadResults.first?.value, + let original = firstResult.original, + let compressed = firstResult.compressed { + // 3. 如果成功,返回上传结果 + let results = UploadResults(original: original, compressed: compressed) + self.parent.onImageUploaded?(.success(results)) + } else { + // 4. 如果失败,返回错误 + self.parent.onImageUploaded?(.failure(NSError(domain: "com.wake.upload", + code: -1, + userInfo: [NSLocalizedDescriptionKey: "上传过程中出现错误"]))) + } + + // 5. 关闭图片选择器 picker.dismiss(animated: true) } } @@ -155,7 +208,7 @@ struct AvatarUploader: View { let size: CGFloat /// 上传完成回调,返回上传结果或错误 - var onUploadComplete: ((Result) -> Void)? + var onUploadComplete: ((Result) -> Void)? // MARK: - State diff --git a/wake/View/Components/Upload/MaterialService.swift b/wake/View/Components/Upload/MaterialService.swift new file mode 100644 index 0000000..6453d5a --- /dev/null +++ b/wake/View/Components/Upload/MaterialService.swift @@ -0,0 +1,62 @@ +import Foundation + +/// 素材服务,处理与素材相关的网络请求 +class MaterialService { + + /// 单例实例 + static let shared = MaterialService() + + private init() {} + + /// 上传素材信息 + /// - Parameters: + /// - fileId: 原文件ID + /// - previewFileId: 预览文件ID + /// - completion: 完成回调,返回是否成功 + func uploadMaterialInfo(fileId: String, + previewFileId: String, + completion: @escaping (Bool, String?) -> Void) { + + let materialData: [[String: String]] = [[ + "file_id": fileId, + "preview_file_id": previewFileId + ]] + + guard let url = URL(string: "\(APIConfig.baseURL)/material") else { + completion(false, "无效的URL") + return + } + + var request = URLRequest(url: url) + request.httpMethod = "POST" + request.allHTTPHeaderFields = APIConfig.authHeaders + request.setValue("application/json", forHTTPHeaderField: "Content-Type") + + do { + request.httpBody = try JSONSerialization.data(withJSONObject: materialData) + + let task = URLSession.shared.dataTask(with: request) { data, response, error in + if let error = error { + completion(false, "上传失败: \(error.localizedDescription)") + return + } + + if let httpResponse = response as? HTTPURLResponse { + if (200...299).contains(httpResponse.statusCode) { + completion(true, nil) + } else { + let statusCode = httpResponse.statusCode + completion(false, "服务器返回错误状态码: \(statusCode)") + } + } else { + completion(false, "无效的服务器响应") + } + } + + task.resume() + + } catch { + completion(false, "请求数据序列化失败: \(error.localizedDescription)") + } + } +} From 8e641fdb6b251cad5a37ca92d8dbdfa8fca5484a Mon Sep 17 00:00:00 2001 From: jinyaqiu Date: Tue, 19 Aug 2025 19:17:11 +0800 Subject: [PATCH 5/7] =?UTF-8?q?feat:=20=E4=B8=8A=E4=BC=A0=E8=BF=9B?= =?UTF-8?q?=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UserInterfaceState.xcuserstate | Bin 122452 -> 123932 bytes wake/View/Components/Upload/Avatar.swift | 243 +++++++++--------- ...{Compression.swift => ImageUploader.swift} | 0 .../Upload/ImageUploaderGetID.swift | 219 +++++++++++++++- 4 files changed, 335 insertions(+), 127 deletions(-) rename wake/View/Components/Upload/{Compression.swift => ImageUploader.swift} (100%) diff --git a/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate b/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate index 79e8ee05c88bc76d047d77714944190cd0cd28e4..314d4094bc754946893562356171be1194727983 100644 GIT binary patch literal 123932 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 diff --git a/wake/View/Components/Upload/Avatar.swift b/wake/View/Components/Upload/Avatar.swift index e85ba83..07f115d 100644 --- a/wake/View/Components/Upload/Avatar.swift +++ b/wake/View/Components/Upload/Avatar.swift @@ -1,52 +1,60 @@ import SwiftUI import PhotosUI -/// 上传结果,包含原图和压缩图的上传信息 -struct UploadResults { - let original: ImageUploaderGetID.UploadResult - let compressed: ImageUploaderGetID.UploadResult +// MARK: - Data Models + +/// 上传进度信息 +public struct UploadProgress { + public let current: Int + public let total: Int + public let progress: Double + public let isOriginal: Bool + + public init(current: Int, total: Int, progress: Double, isOriginal: Bool) { + self.current = current + self.total = total + self.progress = progress + self.isOriginal = isOriginal + } } +/// 上传结果,包含原图和压缩图的上传信息 +public struct UploadResults { + public let original: ImageUploaderGetID.UploadResult + public let compressed: ImageUploaderGetID.UploadResult + + public init(original: ImageUploaderGetID.UploadResult, + compressed: ImageUploaderGetID.UploadResult) { + self.original = original + self.compressed = compressed + } +} + +// MARK: - Photo Picker + /// 照片选择器,封装了系统相册选择功能 -/// 使用UIViewControllerRepresentable包装PHPickerViewController,提供SwiftUI兼容的图片选择界面 struct PhotoPicker: UIViewControllerRepresentable { // MARK: - Properties - - /// 绑定的已选图片数组,用于存储用户选择的图片 @Binding var selectedImages: [UIImage] - - /// 最多可选图片数量,默认为1 let selectionLimit: Int - - /// 图片过滤器,默认为图片类型,可过滤特定类型的媒体 let filter: PHPickerFilter - - /// 图片上传完成回调,返回上传结果或错误 var onImageUploaded: ((Result) -> Void)? + var onUploadProgress: ((UploadProgress) -> Void)? // MARK: - Initialization - - /// 初始化照片选择器 - /// - Parameters: - /// - selectedImages: 绑定的图片数组,用于接收用户选择的图片 - /// - selectionLimit: 最多可选图片数量,默认为1 - /// - filter: 媒体类型过滤器,默认为图片 - /// - onImageUploaded: 图片上传完成后的回调闭包 - init( - selectedImages: Binding<[UIImage]>, - selectionLimit: Int = 1, - filter: PHPickerFilter = .images, - onImageUploaded: ((Result) -> Void)? = nil - ) { + init(selectedImages: Binding<[UIImage]>, + selectionLimit: Int = 1, + filter: PHPickerFilter = .images, + onImageUploaded: ((Result) -> Void)? = nil, + onUploadProgress: ((UploadProgress) -> Void)? = nil) { self._selectedImages = selectedImages self.selectionLimit = selectionLimit self.filter = filter self.onImageUploaded = onImageUploaded + self.onUploadProgress = onUploadProgress } // MARK: - UIViewControllerRepresentable - - /// 创建并返回配置好的PHPickerViewController func makeUIViewController(context: Context) -> PHPickerViewController { var configuration = PHPickerConfiguration(photoLibrary: PHPhotoLibrary.shared()) configuration.filter = filter @@ -58,42 +66,30 @@ struct PhotoPicker: UIViewControllerRepresentable { return picker } - /// 更新视图控制器(空实现,因为不需要更新) func updateUIViewController(_ uiViewController: PHPickerViewController, context: Context) {} - /// 创建协调器,用于处理PHPickerViewController的代理方法 func makeCoordinator() -> Coordinator { Coordinator(self) } // MARK: - Coordinator - - /// 协调器类,处理PHPickerViewController的代理方法 class Coordinator: NSObject, PHPickerViewControllerDelegate { - /// 对父视图的弱引用 let parent: PhotoPicker - - /// 图片上传器实例 private let uploader = ImageUploaderGetID() init(_ parent: PhotoPicker) { self.parent = parent } - /// 当用户完成图片选择时调用 func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) { - // 清空已选图片 parent.selectedImages.removeAll() - - // 使用DispatchGroup管理多个异步任务 let group = DispatchGroup() - var loadedImages: [Int: UIImage] = [:] // 用于保持图片顺序的字典 + var loadedImages: [Int: UIImage] = [:] var uploadResults: [Int: (original: ImageUploaderGetID.UploadResult?, - compressed: ImageUploaderGetID.UploadResult?)] = [:] + compressed: ImageUploaderGetID.UploadResult?)] = [:] - // 遍历所有选中的图片 for (index, result) in results.enumerated() { - group.enter() // 进入组 + group.enter() if result.itemProvider.canLoadObject(ofClass: UIImage.self) { result.itemProvider.loadObject(ofClass: UIImage.self) { [weak self] (image, error) in @@ -102,134 +98,138 @@ struct PhotoPicker: UIViewControllerRepresentable { return } - // 1. 保存原始图片 loadedImages[index] = image - // 2. 压缩图片(质量压缩到50%) guard let compressedImage = image.jpegData(compressionQuality: 0.5).flatMap(UIImage.init(data:)) else { group.leave() return } - // 3. 上传原图 - self.uploader.uploadImage(image) { [weak self] originalResult in - guard let self = self else { - group.leave() - return - } - - switch originalResult { - case .success(let originalUploadResult): - // 4. 原图上传成功后上传压缩图 - self.uploader.uploadImage(compressedImage) { compressedResult in - defer { group.leave() } - - switch compressedResult { - case .success(let compressedUploadResult): - // 保存两个上传结果 - uploadResults[index] = (originalUploadResult, compressedUploadResult) - print("✅ 原图和压缩图上传成功!") - print("📂 原图信息:") - print(" - 文件ID: \(originalUploadResult.fileId)") - print(" - 文件大小: \(originalUploadResult.fileSize) 字节") - print("📦 压缩图信息:") - print(" - 文件ID: \(compressedUploadResult.fileId)") - print(" - 文件大小: \(compressedUploadResult.fileSize) 字节") - - // 使用MaterialService上传文件信息到后端 - MaterialService.shared.uploadMaterialInfo( - fileId: originalUploadResult.fileId, - previewFileId: compressedUploadResult.fileId - ) { success, errorMessage in - if success { - print("✅ 文件信息上传成功 素材上传成功!!!!!") - } else if let errorMessage = errorMessage { - print("❌ 文件信息上传失败: \(errorMessage)") - } - } - - case .failure(let error): - print("❌ 压缩图上传失败: \(error.localizedDescription)") - uploadResults[index] = (originalUploadResult, nil) - } + self.uploader.uploadImage( + image, + progress: { [weak self] progress in + let progressInfo = UploadProgress( + current: Int(progress * 100), + total: 100, + progress: progress, + isOriginal: true + ) + DispatchQueue.main.async { + self?.parent.onUploadProgress?(progressInfo) + } + print("📤 原图上传进度: \(Int(progress * 100))%") + }, + completion: { [weak self] originalResult in + guard let self = self else { + group.leave() + return } - case .failure(let error): - print("❌ 原图上传失败: \(error.localizedDescription)") - group.leave() + switch originalResult { + case .success(let originalUploadResult): + self.uploader.uploadImage( + compressedImage, + progress: { [weak self] progress in + let progressInfo = UploadProgress( + current: Int(progress * 100), + total: 100, + progress: progress, + isOriginal: false + ) + DispatchQueue.main.async { + self?.parent.onUploadProgress?(progressInfo) + } + print("📊 压缩图上传进度: \(Int(progress * 100))%") + }, + completion: { compressedResult in + defer { group.leave() } + + switch compressedResult { + case .success(let compressedUploadResult): + uploadResults[index] = (originalUploadResult, compressedUploadResult) + print("✅ 原图和压缩图上传成功!") + print("📂 原图信息:") + print(" - 文件ID: \(originalUploadResult.fileId)") + print(" - 文件大小: \(originalUploadResult.fileSize) 字节") + print("📦 压缩图信息:") + print(" - 文件ID: \(compressedUploadResult.fileId)") + print(" - 文件大小: \(compressedUploadResult.fileSize) 字节") + + MaterialService.shared.uploadMaterialInfo( + fileId: originalUploadResult.fileId, + previewFileId: compressedUploadResult.fileId + ) { success, errorMessage in + if success { + print("✅ 文件信息上传成功 素材上传成功!!!!!") + } else if let errorMessage = errorMessage { + print("❌ 文件信息上传失败: \(errorMessage)") + } + } + + case .failure(let error): + print("❌ 压缩图上传失败: \(error.localizedDescription)") + uploadResults[index] = (originalUploadResult, nil) + } + } + ) + + case .failure(let error): + print("❌ 原图上传失败: \(error.localizedDescription)") + group.leave() + } } - } + ) } } else { group.leave() } } - // 所有上传任务完成后的处理 group.notify(queue: .main) { [weak self] in guard let self = self else { return } - // 1. 更新选中的图片(只显示原图) let sortedImages = loadedImages.sorted { $0.key < $1.key }.map { $0.value } self.parent.selectedImages.append(contentsOf: sortedImages) - // 2. 检查是否所有上传都成功 if let firstResult = uploadResults.first?.value, let original = firstResult.original, let compressed = firstResult.compressed { - // 3. 如果成功,返回上传结果 let results = UploadResults(original: original, compressed: compressed) self.parent.onImageUploaded?(.success(results)) } else { - // 4. 如果失败,返回错误 - self.parent.onImageUploaded?(.failure(NSError(domain: "com.wake.upload", - code: -1, - userInfo: [NSLocalizedDescriptionKey: "上传过程中出现错误"]))) + self.parent.onImageUploaded?(.failure(NSError( + domain: "com.wake.upload", + code: -1, + userInfo: [NSLocalizedDescriptionKey: "上传过程中出现错误"] + ))) } - // 5. 关闭图片选择器 picker.dismiss(animated: true) } } } } -// MARK: - AvatarUploader +// MARK: - Avatar Uploader /// 头像上传视图,提供头像选择功能 -/// 封装了头像显示和选择逻辑,支持点击选择新头像 struct AvatarUploader: View { - // MARK: - Properties - - /// 绑定的当前选中头像图片 @Binding var selectedImage: UIImage? - - /// 头像显示尺寸 let size: CGFloat - - /// 上传完成回调,返回上传结果或错误 var onUploadComplete: ((Result) -> Void)? - // MARK: - State - - /// 控制图片选择器的显示状态 @State private var isImagePickerPresented = false - // MARK: - Body - var body: some View { - // 头像按钮,点击后显示图片选择器 Button(action: { isImagePickerPresented = true }) { ZStack { if let selectedImage = selectedImage { - // 显示已选中的头像 Image(uiImage: selectedImage) .resizable() .scaledToFill() .frame(width: size, height: size) .clipShape(RoundedRectangle(cornerRadius: size * 0.1)) } else { - // 默认头像占位视图 Color.gray.opacity(0.1) .frame(width: size, height: size) .overlay( @@ -244,11 +244,10 @@ struct AvatarUploader: View { } } .frame(width: size, height: size) - .contentShape(Rectangle()) // 确保整个区域都可点击 + .contentShape(Rectangle()) } - .buttonStyle(PlainButtonStyle()) // 使用无样式按钮 + .buttonStyle(PlainButtonStyle()) .sheet(isPresented: $isImagePickerPresented) { - // 显示图片选择器 PhotoPicker( selectedImages: Binding( get: { [selectedImage].compactMap { $0 } }, @@ -256,10 +255,12 @@ struct AvatarUploader: View { selectedImage = images.first } ), - selectionLimit: 1, // 限制只能选择一张图片 + selectionLimit: 1, onImageUploaded: { result in - // 图片上传完成后的处理 onUploadComplete?(result) + }, + onUploadProgress: { progress in + print("上传进度:\(progress.current)/\(progress.total),进度:\(progress.progress * 100)%") } ) } diff --git a/wake/View/Components/Upload/Compression.swift b/wake/View/Components/Upload/ImageUploader.swift similarity index 100% rename from wake/View/Components/Upload/Compression.swift rename to wake/View/Components/Upload/ImageUploader.swift diff --git a/wake/View/Components/Upload/ImageUploaderGetID.swift b/wake/View/Components/Upload/ImageUploaderGetID.swift index 4ea82f4..6eb056b 100644 --- a/wake/View/Components/Upload/ImageUploaderGetID.swift +++ b/wake/View/Components/Upload/ImageUploaderGetID.swift @@ -69,8 +69,13 @@ public class ImageUploaderGetID: ObservableObject { /// 上传图片到服务器 /// - Parameters: /// - image: 要上传的图片 - /// - completion: 完成回调,返回Result类型的结果 - public func uploadImage(_ image: UIImage, completion: @escaping (Result) -> Void) { + /// - progress: 上传进度回调 (0.0 到 1.0) + /// - completion: 完成回调 + public func uploadImage( + _ image: UIImage, + progress: @escaping (Double) -> Void, + completion: @escaping (Result) -> Void + ) { print("🔄 开始准备上传图片...") // 1. 转换图片为Data @@ -85,11 +90,37 @@ public class ImageUploaderGetID: ObservableObject { getUploadURL(for: imageData) { [weak self] result in switch result { case .success((let fileId, let uploadURL)): - // 3. 确认上传 - self?.confirmUpload(fileId: fileId, fileName: "avatar_\(UUID().uuidString).jpg", fileSize: imageData.count) { confirmResult in - completion(confirmResult) - } + print("📤 获取到上传URL,开始上传文件...") + + // 3. 上传文件 + _ = self?.uploadFile( + fileData: imageData, + to: uploadURL, + mimeType: "image/jpeg", + onProgress: { uploadProgress in + print("📊 上传进度: \(Int(uploadProgress * 100))%") + progress(uploadProgress) + }, + completion: { uploadResult in + switch uploadResult { + case .success: + // 4. 确认上传 + self?.confirmUpload( + fileId: fileId, + fileName: "avatar_\(UUID().uuidString).jpg", + fileSize: imageData.count, + completion: completion + ) + + case .failure(let error): + print("❌ 文件上传失败: \(error.localizedDescription)") + completion(.failure(error)) + } + } + ) + case .failure(let error): + print("❌ 获取上传URL失败: \(error.localizedDescription)") completion(.failure(error)) } } @@ -211,6 +242,182 @@ public class ImageUploaderGetID: ObservableObject { task.resume() } + + /// 上传文件到指定URL + /// - Parameters: + /// - fileData: 要上传的文件数据 + /// - uploadURL: 上传URL + /// - mimeType: 文件MIME类型 + /// - onProgress: 进度回调,0.0 到 1.0 + /// - completion: 完成回调 + public func uploadFile( + fileData: Data, + to uploadURL: URL, + mimeType: String = "application/octet-stream", + onProgress: @escaping (Double) -> Void, + completion: @escaping (Result) -> Void + ) -> URLSessionUploadTask { + var request = URLRequest(url: uploadURL) + request.httpMethod = "PUT" + request.setValue(mimeType, forHTTPHeaderField: "Content-Type") + + let task = session.uploadTask( + with: request, + from: fileData + ) { _, response, error in + if let error = error { + completion(.failure(error)) + return + } + + guard let httpResponse = response as? HTTPURLResponse, + (200...299).contains(httpResponse.statusCode) else { + let statusCode = (response as? HTTPURLResponse)?.statusCode ?? -1 + completion(.failure(UploadError.serverError("上传失败,状态码: \(statusCode)"))) + return + } + + completion(.success(())) + } + + // 添加进度观察 + if #available(iOS 11.0, *) { + let progressObserver = task.progress.observe(\.fractionCompleted) { (progressValue, _) in + DispatchQueue.main.async { + onProgress(progressValue.fractionCompleted) + } + } + + task.addCompletionHandler { [weak task] in + progressObserver.invalidate() + task?.progress.cancel() + } + } else { + // Fallback for earlier iOS versions + var lastProgress: Double = 0 + let timer = Timer.scheduledTimer(withTimeInterval: 0.1, repeats: true) { timer in + let bytesSent = task.countOfBytesSent + let totalBytes = task.countOfBytesExpectedToSend + let currentProgress = totalBytes > 0 ? Double(bytesSent) / Double(totalBytes) : 0 + + // 只有当进度有显著变化时才回调,避免频繁更新UI + if abs(currentProgress - lastProgress) > 0.01 || currentProgress >= 1.0 { + lastProgress = currentProgress + DispatchQueue.main.async { + onProgress(min(currentProgress, 1.0)) + } + } + + if currentProgress >= 1.0 { + timer.invalidate() + } + } + + task.addCompletionHandler { + timer.invalidate() + } + } + + task.resume() + return task + } + + // MARK: - 文件上传状态 + + /// 文件上传状态 + public struct FileStatus { + public let file: Data + public var status: UploadStatus + public var progress: Double + + public enum UploadStatus { + case pending + case uploading + case completed + case failed(Error) + } + + public init(file: Data, status: UploadStatus = .pending, progress: Double = 0) { + self.file = file + self.status = status + self.progress = progress + } + } +} + +// MARK: - URLSessionTask 扩展 + +private class TaskObserver: NSObject { + private weak var task: URLSessionTask? + private var handlers: [() -> Void] = [] + + init(task: URLSessionTask) { + self.task = task + super.init() + task.addObserver(self, forKeyPath: #keyPath(URLSessionTask.state), options: .new, context: nil) + } + + func addHandler(_ handler: @escaping () -> Void) { + handlers.append(handler) + } + + override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) { + guard keyPath == #keyPath(URLSessionTask.state), + let task = task, + task.state == .completed else { + return + } + + // 调用所有完成处理器 + DispatchQueue.main.async { [weak self] in + self?.handlers.forEach { $0() } + self?.cleanup() + } + } + + private func cleanup() { + task?.removeObserver(self, forKeyPath: #keyPath(URLSessionTask.state)) + handlers.removeAll() + } + + deinit { + cleanup() + } +} + +private extension URLSessionTask { + private static var taskObserverKey: UInt8 = 0 + + private var taskObserver: TaskObserver? { + get { + return objc_getAssociatedObject(self, &Self.taskObserverKey) as? TaskObserver + } + set { + objc_setAssociatedObject(self, &Self.taskObserverKey, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + } + } + + func addCompletionHandler(_ handler: @escaping () -> Void) { + if #available(iOS 11.0, *) { + if let observer = taskObserver { + observer.addHandler(handler) + } else { + let observer = TaskObserver(task: self) + observer.addHandler(handler) + taskObserver = observer + } + } else { + // iOS 11 以下版本使用通知 + let name = NSNotification.Name("TaskCompleted\(self.taskIdentifier)") + NotificationCenter.default.addObserver( + forName: name, + object: self, + queue: .main + ) { _ in + handler() + } + } + } } // MARK: - 响应模型 From 5edee649bdbb11161331f7d6deed8d03c9527f43 Mon Sep 17 00:00:00 2001 From: jinyaqiu Date: Tue, 19 Aug 2025 19:33:10 +0800 Subject: [PATCH 6/7] =?UTF-8?q?feat:=20=E6=96=87=E4=BB=B6=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E6=88=90=E5=8A=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UserInterfaceState.xcuserstate | Bin 123932 -> 125554 bytes wake/View/Components/Upload/Avatar.swift | 190 ++++++------------ .../Upload/ImageUploadService.swift | 166 +++++++++++++++ .../Components/Upload/ImageUploader.swift | 0 .../Upload/ImageUploaderGetID.swift | 46 +++-- 5 files changed, 267 insertions(+), 135 deletions(-) create mode 100644 wake/View/Components/Upload/ImageUploadService.swift delete mode 100644 wake/View/Components/Upload/ImageUploader.swift diff --git a/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate b/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate index 314d4094bc754946893562356171be1194727983..64481b2eb953bf6ecc034cc0bf342998c74ab9b0 100644 GIT binary patch literal 125554 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

>ZJx!yVr}pL1D`(`` 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 -> Void)? - var onUploadProgress: ((UploadProgress) -> Void)? + var onImageUploaded: ((Result) -> Void)? + var onUploadProgress: ((ImageUploadService.UploadProgress) -> Void)? + @Environment(\.presentationMode) private var presentationMode // MARK: - Initialization + init(selectedImages: Binding<[UIImage]>, selectionLimit: Int = 1, filter: PHPickerFilter = .images, - onImageUploaded: ((Result) -> Void)? = nil, - onUploadProgress: ((UploadProgress) -> Void)? = nil) { + onImageUploaded: ((Result) -> Void)? = nil, + onUploadProgress: ((ImageUploadService.UploadProgress) -> Void)? = nil) { self._selectedImages = selectedImages self.selectionLimit = selectionLimit self.filter = filter @@ -55,6 +29,7 @@ struct PhotoPicker: UIViewControllerRepresentable { } // MARK: - UIViewControllerRepresentable + func makeUIViewController(context: Context) -> PHPickerViewController { var configuration = PHPickerConfiguration(photoLibrary: PHPhotoLibrary.shared()) configuration.filter = filter @@ -73,109 +48,77 @@ struct PhotoPicker: UIViewControllerRepresentable { } // MARK: - Coordinator + class Coordinator: NSObject, PHPickerViewControllerDelegate { let parent: PhotoPicker - private let uploader = ImageUploaderGetID() + private let uploadService = ImageUploadService.shared init(_ parent: PhotoPicker) { self.parent = parent } func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) { + guard !results.isEmpty else { + parent.presentationMode.wrappedValue.dismiss() + return + } + parent.selectedImages.removeAll() let group = DispatchGroup() - var loadedImages: [Int: UIImage] = [:] - var uploadResults: [Int: (original: ImageUploaderGetID.UploadResult?, - compressed: ImageUploaderGetID.UploadResult?)] = [:] + var loadedImages: [Int: UIImage] = [:] + var uploadResults: [Int: ImageUploadService.UploadResults] = [:] + var lastError: Error? for (index, result) in results.enumerated() { group.enter() if result.itemProvider.canLoadObject(ofClass: UIImage.self) { - result.itemProvider.loadObject(ofClass: UIImage.self) { [weak self] (image, error) in - guard let self = self, let image = image as? UIImage else { + result.itemProvider.loadObject(ofClass: UIImage.self) { (image, error) in + if let error = error { + lastError = error + group.leave() + return + } + + guard let image = image as? UIImage else { + lastError = NSError(domain: "com.wake.upload", code: -2, userInfo: [NSLocalizedDescriptionKey: "Failed to load image"]) group.leave() return } loadedImages[index] = image - guard let compressedImage = image.jpegData(compressionQuality: 0.5).flatMap(UIImage.init(data:)) else { - group.leave() - return - } - - self.uploader.uploadImage( + // Upload the image + self.uploadService.uploadOriginalAndCompressedImage( image, - progress: { [weak self] progress in - let progressInfo = UploadProgress( - current: Int(progress * 100), - total: 100, - progress: progress, - isOriginal: true - ) + compressionQuality: 0.5, + progress: { progress in DispatchQueue.main.async { - self?.parent.onUploadProgress?(progressInfo) + self.parent.onUploadProgress?(progress) } - print("📤 原图上传进度: \(Int(progress * 100))%") }, - completion: { [weak self] originalResult in - guard let self = self else { - group.leave() - return - } + completion: { result in + defer { group.leave() } - switch originalResult { - case .success(let originalUploadResult): - self.uploader.uploadImage( - compressedImage, - progress: { [weak self] progress in - let progressInfo = UploadProgress( - current: Int(progress * 100), - total: 100, - progress: progress, - isOriginal: false - ) - DispatchQueue.main.async { - self?.parent.onUploadProgress?(progressInfo) - } - print("📊 压缩图上传进度: \(Int(progress * 100))%") - }, - completion: { compressedResult in - defer { group.leave() } - - switch compressedResult { - case .success(let compressedUploadResult): - uploadResults[index] = (originalUploadResult, compressedUploadResult) - print("✅ 原图和压缩图上传成功!") - print("📂 原图信息:") - print(" - 文件ID: \(originalUploadResult.fileId)") - print(" - 文件大小: \(originalUploadResult.fileSize) 字节") - print("📦 压缩图信息:") - print(" - 文件ID: \(compressedUploadResult.fileId)") - print(" - 文件大小: \(compressedUploadResult.fileSize) 字节") - - MaterialService.shared.uploadMaterialInfo( - fileId: originalUploadResult.fileId, - previewFileId: compressedUploadResult.fileId - ) { success, errorMessage in - if success { - print("✅ 文件信息上传成功 素材上传成功!!!!!") - } else if let errorMessage = errorMessage { - print("❌ 文件信息上传失败: \(errorMessage)") - } - } - - case .failure(let error): - print("❌ 压缩图上传失败: \(error.localizedDescription)") - uploadResults[index] = (originalUploadResult, nil) - } + switch result { + case .success(let results): + uploadResults[index] = results + + // Upload file info to backend + MaterialService.shared.uploadMaterialInfo( + fileId: results.original.fileId, + previewFileId: results.compressed.fileId + ) { success, errorMessage in + if success { + print("✅ 文件信息上传成功") + } else if let errorMessage = errorMessage { + print("❌ 文件信息上传失败: \(errorMessage)") } - ) + } case .failure(let error): - print("❌ 原图上传失败: \(error.localizedDescription)") - group.leave() + lastError = error + print("❌ 图片上传失败: \(error.localizedDescription)") } } ) @@ -188,23 +131,24 @@ struct PhotoPicker: UIViewControllerRepresentable { group.notify(queue: .main) { [weak self] in guard let self = self else { return } - let sortedImages = loadedImages.sorted { $0.key < $1.key }.map { $0.value } - self.parent.selectedImages.append(contentsOf: sortedImages) - - if let firstResult = uploadResults.first?.value, - let original = firstResult.original, - let compressed = firstResult.compressed { - let results = UploadResults(original: original, compressed: compressed) - self.parent.onImageUploaded?(.success(results)) + if let error = lastError { + self.parent.onImageUploaded?(.failure(error)) } else { - self.parent.onImageUploaded?(.failure(NSError( - domain: "com.wake.upload", - code: -1, - userInfo: [NSLocalizedDescriptionKey: "上传过程中出现错误"] - ))) + let sortedImages = loadedImages.sorted { $0.key < $1.key }.map { $0.value } + self.parent.selectedImages.append(contentsOf: sortedImages) + + if let firstResult = uploadResults.first?.value { + self.parent.onImageUploaded?(.success(firstResult)) + } else { + self.parent.onImageUploaded?(.failure(NSError( + domain: "com.wake.upload", + code: -1, + userInfo: [NSLocalizedDescriptionKey: "上传过程中出现错误"] + ))) + } } - picker.dismiss(animated: true) + self.parent.presentationMode.wrappedValue.dismiss() } } } @@ -216,7 +160,7 @@ struct PhotoPicker: UIViewControllerRepresentable { struct AvatarUploader: View { @Binding var selectedImage: UIImage? let size: CGFloat - var onUploadComplete: ((Result) -> Void)? + var onUploadComplete: ((Result) -> Void)? @State private var isImagePickerPresented = false @@ -260,7 +204,7 @@ struct AvatarUploader: View { onUploadComplete?(result) }, onUploadProgress: { progress in - print("上传进度:\(progress.current)/\(progress.total),进度:\(progress.progress * 100)%") + print("上传进度:\(progress.current)/\(progress.total),进度:\(Int(progress.progress * 100))%") } ) } diff --git a/wake/View/Components/Upload/ImageUploadService.swift b/wake/View/Components/Upload/ImageUploadService.swift new file mode 100644 index 0000000..085919a --- /dev/null +++ b/wake/View/Components/Upload/ImageUploadService.swift @@ -0,0 +1,166 @@ +import Foundation +import UIKit + +/// 图片上传服务,封装了图片上传和进度跟踪功能 +public class ImageUploadService { + + // MARK: - Shared Instance + + public static let shared = ImageUploadService() + + // MARK: - Properties + + private let uploader: ImageUploaderGetID + + // MARK: - Initialization + + public init(uploader: ImageUploaderGetID = ImageUploaderGetID()) { + self.uploader = uploader + } + + // MARK: - Public Methods + + /// 上传图片并返回上传结果 + /// - Parameters: + /// - image: 要上传的图片 + /// - progressHandler: 上传进度回调 (0.0 到 1.0) + /// - completion: 完成回调,返回上传结果或错误 + public func uploadImage( + _ image: UIImage, + progress progressHandler: @escaping (ImageUploadService.UploadProgress) -> Void, + completion: @escaping (Result) -> Void + ) { + uploader.uploadImage( + image, + progress: { progress in + let progressInfo = ImageUploadService.UploadProgress( + current: Int(progress * 100), + total: 100, + progress: progress, + isOriginal: true + ) + DispatchQueue.main.async { + progressHandler(progressInfo) + } + }, + completion: { result in + DispatchQueue.main.async { + completion(result) + } + } + ) + } + + /// 上传压缩图片并返回上传结果 + /// - Parameters: + /// - image: 要上传的图片 + /// - compressionQuality: 压缩质量 (0.0 到 1.0) + /// - progressHandler: 上传进度回调 (0.0 到 1.0) + /// - completion: 完成回调,返回上传结果或错误 + public func uploadCompressedImage( + _ image: UIImage, + compressionQuality: CGFloat = 0.5, + progress progressHandler: @escaping (ImageUploadService.UploadProgress) -> Void, + completion: @escaping (Result) -> Void + ) { + guard let compressedImage = image.jpegData(compressionQuality: compressionQuality).flatMap(UIImage.init(data:)) else { + completion(.failure(NSError(domain: "com.wake.upload", code: -1, userInfo: [NSLocalizedDescriptionKey: "图片压缩失败"]))) + return + } + + uploadImage( + compressedImage, + progress: progressHandler, + completion: completion + ) + } + + /// 上传原图和压缩图 + /// - Parameters: + /// - image: 原始图片 + /// - compressionQuality: 压缩质量 (0.0 到 1.0) + /// - progressHandler: 上传进度回调 + /// - completion: 完成回调,返回原始图和压缩图的上传结果 + public func uploadOriginalAndCompressedImage( + _ image: UIImage, + compressionQuality: CGFloat = 0.5, + progress progressHandler: @escaping (ImageUploadService.UploadProgress) -> Void, + completion: @escaping (Result) -> Void + ) { + // 上传原图 + uploadImage(image, progress: { progress in + let originalProgress = ImageUploadService.UploadProgress( + current: Int(progress.progress * 100), + total: 200, // 总进度为200(原图100 + 压缩图100) + progress: progress.progress * 0.5, // 原图占50% + isOriginal: true + ) + progressHandler(originalProgress) + }) { [weak self] originalResult in + guard let self = self else { return } + + switch originalResult { + case .success(let originalUploadResult): + // 原图上传成功,上传压缩图 + self.uploadCompressedImage( + image, + compressionQuality: compressionQuality, + progress: { progress in + let compressedProgress = ImageUploadService.UploadProgress( + current: 100 + Int(progress.progress * 100), // 从100开始 + total: 200, // 总进度为200(原图100 + 压缩图100) + progress: 0.5 + (progress.progress * 0.5), // 压缩图占后50% + isOriginal: false + ) + progressHandler(compressedProgress) + }, + completion: { compressedResult in + switch compressedResult { + case .success(let compressedUploadResult): + let results = ImageUploadService.UploadResults( + original: originalUploadResult, + compressed: compressedUploadResult + ) + completion(.success(results)) + + case .failure(let error): + completion(.failure(error)) + } + } + ) + + case .failure(let error): + completion(.failure(error)) + } + } + } + + // MARK: - Supporting Types + + /// 上传进度信息 + public struct UploadProgress { + public let current: Int + public let total: Int + public let progress: Double + public let isOriginal: Bool + + public init(current: Int, total: Int, progress: Double, isOriginal: Bool) { + self.current = current + self.total = total + self.progress = progress + self.isOriginal = isOriginal + } + } + + /// 上传结果,包含原图和压缩图的上传信息 + public struct UploadResults { + public let original: ImageUploaderGetID.UploadResult + public let compressed: ImageUploaderGetID.UploadResult + + public init(original: ImageUploaderGetID.UploadResult, + compressed: ImageUploaderGetID.UploadResult) { + self.original = original + self.compressed = compressed + } + } +} diff --git a/wake/View/Components/Upload/ImageUploader.swift b/wake/View/Components/Upload/ImageUploader.swift deleted file mode 100644 index e69de29..0000000 diff --git a/wake/View/Components/Upload/ImageUploaderGetID.swift b/wake/View/Components/Upload/ImageUploaderGetID.swift index 6eb056b..7699858 100644 --- a/wake/View/Components/Upload/ImageUploaderGetID.swift +++ b/wake/View/Components/Upload/ImageUploaderGetID.swift @@ -7,7 +7,7 @@ public class ImageUploaderGetID: ObservableObject { // MARK: - 类型定义 /// 上传结果 - public struct UploadResult { + public struct UploadResult: Codable { public let fileUrl: String public let fileName: String public let fileSize: Int @@ -29,6 +29,7 @@ public class ImageUploaderGetID: ObservableObject { case invalidResponse case uploadFailed(Error?) case invalidFileId + case invalidResponseData public var errorDescription: String? { switch self { @@ -44,6 +45,8 @@ public class ImageUploaderGetID: ObservableObject { return "上传失败: \(error?.localizedDescription ?? "未知错误")" case .invalidFileId: return "无效的文件ID" + case .invalidResponseData: + return "无效的响应数据" } } } @@ -197,8 +200,8 @@ public class ImageUploaderGetID: ObservableObject { /// 确认上传 private func confirmUpload(fileId: String, fileName: String, fileSize: Int, completion: @escaping (Result) -> Void) { - let urlString = "\(apiConfig.baseURL)/file/confirm-upload" - guard let url = URL(string: urlString) else { + let endpoint = "\(apiConfig.baseURL)/file/confirm-upload" + guard let url = URL(string: endpoint) else { completion(.failure(UploadError.invalidURL)) return } @@ -207,24 +210,39 @@ public class ImageUploaderGetID: ObservableObject { request.httpMethod = "POST" request.allHTTPHeaderFields = apiConfig.authHeaders - let requestBody: [String: Any] = ["file_id": fileId] + let body: [String: Any] = [ + "file_id": fileId, + "file_name": fileName, + "file_size": fileSize + ] do { - request.httpBody = try JSONSerialization.data(withJSONObject: requestBody) + request.httpBody = try JSONSerialization.data(withJSONObject: body) + print("📤 确认上传请求,fileId: \(fileId), 文件名: \(fileName)") } catch { + print("❌ 序列化确认上传参数失败: \(error.localizedDescription)") completion(.failure(error)) return } let task = session.dataTask(with: request) { data, response, error in if let error = error { + print("❌ 确认上传请求失败: \(error.localizedDescription)") completion(.failure(UploadError.uploadFailed(error))) return } - guard let httpResponse = response as? HTTPURLResponse, - (200...299).contains(httpResponse.statusCode) else { - completion(.failure(UploadError.serverError("确认上传失败,状态码: \((response as? HTTPURLResponse)?.statusCode ?? -1)"))) + guard let httpResponse = response as? HTTPURLResponse else { + print("❌ 无效的服务器响应") + completion(.failure(UploadError.invalidResponse)) + return + } + + guard (200...299).contains(httpResponse.statusCode) else { + let statusCode = httpResponse.statusCode + let errorMessage = "确认上传失败,状态码: \(statusCode)" + print("❌ \(errorMessage)") + completion(.failure(UploadError.serverError(errorMessage))) return } @@ -270,9 +288,13 @@ public class ImageUploaderGetID: ObservableObject { return } - guard let httpResponse = response as? HTTPURLResponse, - (200...299).contains(httpResponse.statusCode) else { - let statusCode = (response as? HTTPURLResponse)?.statusCode ?? -1 + guard let httpResponse = response as? HTTPURLResponse else { + completion(.failure(UploadError.invalidResponse)) + return + } + + guard httpResponse.statusCode >= 200 && httpResponse.statusCode < 300 else { + let statusCode = httpResponse.statusCode completion(.failure(UploadError.serverError("上传失败,状态码: \(statusCode)"))) return } @@ -293,7 +315,7 @@ public class ImageUploaderGetID: ObservableObject { task?.progress.cancel() } } else { - // Fallback for earlier iOS versions + // iOS 11 以下版本使用通知 var lastProgress: Double = 0 let timer = Timer.scheduledTimer(withTimeInterval: 0.1, repeats: true) { timer in let bytesSent = task.countOfBytesSent From 18147895a2a3ab62606a5dcc7e4675f3daafd869 Mon Sep 17 00:00:00 2001 From: jinyaqiu Date: Tue, 19 Aug 2025 20:34:25 +0800 Subject: [PATCH 7/7] =?UTF-8?q?feat:=20=E7=99=BB=E5=BD=95=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E8=81=94=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UserInterfaceState.xcuserstate | Bin 125554 -> 126571 bytes wake/Utils/APIConfig.swift | 18 +- wake/Utils/KeychainHelper.swift | 83 +++++++++ wake/View/Login/Login.swift | 167 +++++++++++++++--- 4 files changed, 242 insertions(+), 26 deletions(-) create mode 100644 wake/Utils/KeychainHelper.swift diff --git a/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate b/wake.xcodeproj/project.xcworkspace/xcuserdata/elliwood.xcuserdatad/UserInterfaceState.xcuserstate index 64481b2eb953bf6ecc034cc0bf342998c74ab9b0..ce3ab0a0f915cf11accc7aeb4c7122df9dd91f0a 100644 GIT binary patch literal 126571 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 Q`TzUh|Nno6v>p6^0PQpk-T(jq literal 125554 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

>ZJx!yVr}pL1D`(`` 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 Bool { + return save(token, for: .accessToken) + } + + /// 从 Keychain 获取访问令牌 + public static func getAccessToken() -> String? { + return get(for: .accessToken) + } + + /// 保存刷新令牌到 Keychain + public static func saveRefreshToken(_ token: String) -> Bool { + return save(token, for: .refreshToken) + } + + /// 从 Keychain 获取刷新令牌 + public static func getRefreshToken() -> String? { + return get(for: .refreshToken) + } + + /// 删除所有存储的令牌 + public static func clearTokens() { + delete(for: .accessToken) + delete(for: .refreshToken) + } + + // MARK: - 私有方法 + + private static func save(_ string: String, for key: KeychainKey) -> Bool { + guard let data = string.data(using: .utf8) else { return false } + + let query: [String: Any] = [ + kSecClass as String: kSecClassGenericPassword, + kSecAttrAccount as String: key.rawValue, + kSecValueData as String: data + ] + + // 先删除已存在的项目 + SecItemDelete(query as CFDictionary) + + // 添加新项目 + let status = SecItemAdd(query as CFDictionary, nil) + return status == errSecSuccess + } + + private static func get(for key: KeychainKey) -> String? { + let query: [String: Any] = [ + kSecClass as String: kSecClassGenericPassword, + kSecAttrAccount as String: key.rawValue, + kSecReturnData as String: true, + kSecMatchLimit as String: kSecMatchLimitOne + ] + + var dataTypeRef: AnyObject? + let status = SecItemCopyMatching(query as CFDictionary, &dataTypeRef) + + guard status == errSecSuccess, let data = dataTypeRef as? Data else { + return nil + } + + return String(data: data, encoding: .utf8) + } + + private static func delete(for key: KeychainKey) { + let query: [String: Any] = [ + kSecClass as String: kSecClassGenericPassword, + kSecAttrAccount as String: key.rawValue + ] + + SecItemDelete(query as CFDictionary) + } +} diff --git a/wake/View/Login/Login.swift b/wake/View/Login/Login.swift index 7b34b71..5a5e02d 100644 --- a/wake/View/Login/Login.swift +++ b/wake/View/Login/Login.swift @@ -12,7 +12,6 @@ struct LoginView: View { @State private var errorMessage = "" @State private var currentNonce: String? @State private var isLoggedIn = false - // MARK: - Body var body: some View { @@ -196,9 +195,12 @@ struct LoginView: View { print("🔵 [Apple ID] 准备调用后端认证...") authenticateWithBackend( - userId: userId, - email: email, - name: fullName, + userId: appleIDCredential.user, + email: appleIDCredential.email ?? "", + name: [appleIDCredential.fullName?.givenName, + appleIDCredential.fullName?.familyName] + .compactMap { $0 } + .joined(separator: " "), identityToken: identityToken, authCode: authCode ) @@ -216,37 +218,160 @@ struct LoginView: View { isLoading = true print("🔵 [Backend] 开始后端认证...") - let url = "https://your-api-endpoint.com/api/auth/apple" + let endpoint = "\(APIConfig.baseURL)/iam/login/oauth" + guard let url = URL(string: endpoint) else { + print("❌ [Backend] 无效的URL: \(endpoint)") + self.handleAuthenticationError(NSError(domain: "", code: -1, userInfo: [NSLocalizedDescriptionKey: "无效的URL"])) + return + } + var parameters: [String: Any] = [ - "appleUserId": userId, + "provider": "Apple", + "token": identityToken, + "userId": userId, "email": email, "name": name, - "identityToken": identityToken ] if let authCode = authCode { - parameters["authorizationCode"] = authCode + parameters["authorization_code"] = authCode } + print("📤 [Backend] 请求URL: \(endpoint)") print("📤 [Backend] 请求参数: \(parameters)") - AF.request(url, method: .post, parameters: parameters, encoding: JSONEncoding.default) - .validate() - .responseJSON { response in + var request = URLRequest(url: url) + request.httpMethod = "POST" + request.setValue("application/json", forHTTPHeaderField: "Content-Type") + + do { + request.httpBody = try JSONSerialization.data(withJSONObject: parameters, options: []) + } catch { + print("❌ [Backend] 参数序列化失败: \(error.localizedDescription)") + self.handleAuthenticationError(error) + return + } + + let task = URLSession.shared.dataTask(with: request) { data, response, error in + DispatchQueue.main.async { self.isLoading = false - switch response.result { - case .success(let value): - print("✅ [Backend] 认证成功: \(value)") - self.handleSuccessfulAuthentication() - case .failure(let error): - print("❌ [Backend] 认证失败: \(error.localizedDescription)") - if let data = response.data, let json = String(data: data, encoding: .utf8) { - print("❌ [Backend] 错误详情: \(json)") - } + // 1. 处理网络错误 + if let error = error { + print("❌ [Backend] 请求失败: \(error.localizedDescription)") self.handleAuthenticationError(error) + return + } + + // 2. 检查响应 + guard let httpResponse = response as? HTTPURLResponse else { + let error = NSError(domain: "", code: -1, userInfo: [NSLocalizedDescriptionKey: "无效的服务器响应"]) + print("❌ [Backend] \(error.localizedDescription)") + self.handleAuthenticationError(error) + return + } + + // 3. 打印响应状态码和头部信息 + let statusCode = httpResponse.statusCode + print(""" + 📥 [Backend] 响应信息: + - 状态码: \(statusCode) + - URL: \(httpResponse.url?.absoluteString ?? "N/A") + - Headers: \(httpResponse.allHeaderFields) + """) + + // 4. 处理响应数据 + if let data = data { + if let jsonString = String(data: data, encoding: .utf8) { + print("📦 [Backend] 响应内容: \(jsonString)") + } + + // 5. 解析响应数据 + do { + // 首先解析顶层 JSON + if let json = try JSONSerialization.jsonObject(with: data) as? [String: Any] { + print("✅ [Backend] 响应解析成功") + print("📦 [Backend] 响应内容: \(json)") + + // 检查状态码 + if let code = json["code"] as? Int, code != 0 { + let errorMsg = json["message"] as? String ?? "未知错误" + print("❌ [Backend] 请求失败: \(errorMsg)") + self.showError(message: errorMsg) + return + } + + // 获取 data 字典 + guard let responseData = json["data"] as? [String: Any] else { + print("⚠️ [Backend] 未找到 data 字段") + self.showError(message: "服务器返回数据格式错误") + return + } + + // 获取 user_login_info 字典 + if let userLoginInfo = responseData["user_login_info"] as? [String: Any] { + print("👤 [Backend] 用户登录信息: \(userLoginInfo)") + + // 保存令牌到 Keychain + if let accessToken = userLoginInfo["access_token"] as? String { + _ = KeychainHelper.saveAccessToken(accessToken) + print("🔑 [Keychain] 访问令牌已保存") + + // 保存用户信息到 UserDefaults + var userInfo: [String: Any] = [ + "user_id": userLoginInfo["user_id"] as? Int64 ?? 0, + "account": userLoginInfo["account"] as? String ?? "", + "nickname": userLoginInfo["nickname"] as? String ?? "", + "avatar": userLoginInfo["avatar_file_url"] as? String ?? "" + ] + UserDefaults.standard.set(userInfo, forKey: "currentUserInfo") + print("👤 [UserDefaults] 用户信息已保存") + } + + if let refreshToken = userLoginInfo["refresh_token"] as? String { + _ = KeychainHelper.saveRefreshToken(refreshToken) + print("🔄 [Keychain] 刷新令牌已保存") + } + + // 处理认证成功 + DispatchQueue.main.async { + self.handleSuccessfulAuthentication() + } + return + } else { + print("⚠️ [Backend] 未找到 user_login_info 字段") + self.showError(message: "登录信息不完整") + } + } + } catch { + print("⚠️ [Backend] 响应解析失败: \(error.localizedDescription)") + self.showError(message: "数据解析失败") + } + } + + // 6. 如果上面的 return 没有执行,说明认证失败 + if statusCode < 200 || statusCode >= 300 { + let errorMessage: String + switch statusCode { + case 400: + errorMessage = "请求参数错误" + case 401: + errorMessage = "认证失败,请重新登录" + case 403: + errorMessage = "权限不足" + case 404: + errorMessage = "请求的接口不存在" + case 500...599: + errorMessage = "服务器内部错误,请稍后重试" + default: + errorMessage = "未知错误 (状态码: \(statusCode))" + } + self.showError(message: errorMessage) } } + } + + task.resume() } // MARK: - Helpers @@ -264,7 +389,7 @@ struct LoginView: View { showError(message: "登录失败: \(error.localizedDescription)") } - private func handleAuthenticationError(_ error: AFError) { + private func handleAuthenticationError(_ error: Error) { let errorMessage = error.localizedDescription print("❌ [Auth] 认证错误: \(errorMessage)") DispatchQueue.main.async {