我正在尝试使用方法将文件上传到URLSessionUploadTask
API
uploadTask(with request: URLRequest, fromFile fileURL: URL) -> URLSessionUploadTask
一切都很完美,直到文件名不包含分号。
当文件名包含分号应用程序时,应用程序开始崩溃并显示以下错误 -
由于未捕获的异常"NSInvalidArgumentException"而终止应用程序,原因:"无法读取文件在 file:///var/mobile/Containers/Data/Application/E647A171-A7CE-46D8-BE81-DB3626DD0157/Library/Caches/downloads/04405877-1554-744f-92ac-379c76300cd8/C8D67486-B79F-44C7-9295-768F0D4D0323/appium%20!@%23$%25%5E&-+=%7B%7Dl%5B%5D%20;'.,%20%20;%20logs%20-%20Copy%20(1(.ppt'
导致我的应用程序崩溃的文件名示例:
">appium !@#$%^&_-+={}l[] ;\'.,_ ;日志 - 复制 (1(.ppt">
">;.哎呀">
">];。PPT">
如果有人遇到同样的问题,请提供帮助。提前谢谢。
您能否尝试将 ; 替换为某些文本,然后服务器端再次使用一些文本到;
例:-
如果(文件名包含;)然后文件名替换为"分号"。
上传文件时的应用程序端:-
实际文件名 =";。哎呀">
上传文件时的新名称 ="分号.pdf">
将文件保存在数据库中时,服务器端:-
响应中的文件名 ="分号.pdf">
保存在数据库中时的新名称 =";。哎呀">