iOS图片上传服务器(ASIHTTPRequest,SpringMVC)

简介: 最近开始做自己app的服务器,因为正在参与的公司项目用的是springMVC,干脆拿这个做服务器,iOS端采用第三方鼎鼎大名的ASIHTTPRequest(但是已停更很久),经过一天折腾,终于实现简单的图片上传配置ASIHTTPRequest,参见 ASIHTTPRequest配置说明搭建简单的springMVC环境代码iOS端:-(void)upl

最近开始做自己app的服务器,因为正在参与的公司项目用的是springMVC,干脆拿这个做服务器,iOS端采用第三方鼎鼎大名的ASIHTTPRequest(但是已停更很久),经过一天折腾,终于实现简单的图片上传

  1. 配置ASIHTTPRequest,参见
    ASIHTTPRequest配置说明
  2. 搭建简单的springMVC环境

  3. 代码

    iOS端:

-(void)uploadImgToServer:(UIImage*)image{
    ASIFormDataRequest *formDataRequest=[ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"http://tyrantkemp.imwork.net:21848/mvc1/helloworld/uploadfile"]];
    [formDataRequest setPostValue:@"hahaha" forKey:@"name"];
    NSData *postData=UIImageJPEGRepresentation(image, 3);
    if(postData==nil){
        NSLog(@"pic data为空!!!");
    }
    [formDataRequest setDelegate:self];
    [formDataRequest addData:postData forKey:@"file"];
    NSLog(@"pic data:%@",formDataRequest);
    [formDataRequest setDidFailSelector:@selector(urlRequestFailed:)];
    [formDataRequest setDidFinishSelector:@selector(urlRequestSucceeded:)];
    [formDataRequest startSynchronous];
   // NSLog(@"responce is %@",[formDataRequest responseString]);

}
//请求失败
-(void)urlRequestFailed:(ASIHTTPRequest *)request
{
    NSError *error =[request error];
    NSLog(@"%@",error);
    NSLog(@"连接失败!");
    UIAlertView * alt=[[UIAlertView alloc] initWithTitle:@"提示" message:@"连接服务器失败" delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
    [alt show];
}

//请求成功
-(void)urlRequestSucceeded:(ASIHTTPRequest *)request
{
    NSData *data=[request responseData];
    NSXMLParser *parser=[[NSXMLParser alloc] initWithData:data];
    NSLog(@"data length = %d",[data length]);
    NSLog(@"xml data = %@",[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);
    [parser setDelegate:self];
    [parser parse];//进入解析
}

springmvc端:

@RequestMapping(value = "/uploadfile", method = RequestMethod.POST) 
public String handleFileUpload(@RequestParam("file") CommonsMultipartFile file,HttpServletRequest request) throws FileUploadException{
         long startTime=System.currentTimeMillis();   //获取开始时间  
         if(!file.isEmpty()){  
             try {  

                 File ouputimage = new File("C:/pic/green2.jpg"); //新建一个文件
                 try {
                 file.getFileItem().write(ouputimage); //将上传的文件写入新建的文件中
                 } catch (Exception e) {
                   e.printStackTrace();
                 }

             }catch(Exception e){
                 e.printStackTrace();
             }

         }
         long endTime=System.currentTimeMillis(); //获取结束时间  
         System.out.println("上传文件共使用时间:"+(endTime-startTime));  
         return "success"; 
    }
相关文章
|
2月前
|
JSON JavaScript 安全
iOS应用程序数据保护:如何保护iOS应用程序中的图片、资源和敏感数据
iOS应用程序数据保护:如何保护iOS应用程序中的图片、资源和敏感数据
35 1
|
10月前
|
网络协议 iOS开发
iOS 给服务器添加 ipv6 支持 以通过苹果审核
iOS 给服务器添加 ipv6 支持 以通过苹果审核
80 0
|
2月前
|
存储 缓存 安全
基于iOS平台的高效图片缓存策略实现
【4月更文挑战第22天】 在移动应用开发中,图片资源的加载与缓存是影响用户体验的重要因素之一。尤其对于iOS平台,由于设备存储空间的限制以及用户对流畅性的高要求,设计一种合理的图片缓存策略显得尤为关键。本文将探讨在iOS环境下,如何通过使用先进的图片缓存技术,包括内存缓存、磁盘缓存以及网络请求的优化,来提高应用的性能和响应速度。我们将重点分析多级缓存机制的设计与实现,并对可能出现的问题及其解决方案进行讨论。
|
2月前
|
存储 缓存 算法
实现iOS平台的高效图片缓存策略
【4月更文挑战第22天】在移动应用开发中,图片资源的处理是影响用户体验的重要因素之一。特别是对于图像资源密集型的iOS应用,如何有效地缓存图片以减少内存占用和提升加载速度,是开发者们面临的关键挑战。本文将探讨一种针对iOS平台的图片缓存策略,该策略通过结合内存缓存与磁盘缓存的机制,并采用先进的图片解码和异步加载技术,旨在实现快速加载的同时,保持应用的内存效率。
|
2月前
|
存储 缓存 编解码
实现iOS平台的高效图片缓存策略
【4月更文挑战第23天】在移动应用开发领域,尤其是图像处理密集型的iOS应用中,高效的图片缓存策略对于提升用户体验和节省系统资源至关重要。本文将探讨一种针对iOS平台设计的图片缓存方案,该方案通过结合内存缓存与磁盘缓存的多层次结构,旨在优化图片加载性能并降低内存占用。我们将深入分析其设计理念、核心组件以及在实际场景中的应用效果,同时对比其他常见缓存技术的优势与局限。
|
2月前
|
存储 Web App开发 Android开发
iOS不支持WebP格式图片解决方案和iPhone 7及其后硬件拍照的HEIC格式图片
iOS不支持WebP格式图片解决方案和iPhone 7及其后硬件拍照的HEIC格式图片
117 1
iOS不支持WebP格式图片解决方案和iPhone 7及其后硬件拍照的HEIC格式图片
|
1月前
|
Linux 数据库 iOS开发
超级签名源码/超级签/ios分发/签名端本地linux服务器完成签名
该系统完全在linux下运行,不存在使用第三方收费工具,市面上很多系统都是使用的是第三方收费系统,例如:某心签名工具,某测侠等,不开源而且需要每年交费,这种系统只是在这些工具的基础上套了一层壳。请需要系统的放大你们的眼睛。
21 0
|
2月前
按钮的image图片是非圆角,直接对UIButton设置圆角,iOS13系统没有圆角效果的问题及解决方案
按钮的image图片是非圆角,直接对UIButton设置圆角,iOS13系统没有圆角效果的问题及解决方案
28 0
|
2月前
|
移动开发 网络协议 安全
iOS审核在ipv6网络下无法访问服务器的问题及解决方案
iOS审核在ipv6网络下无法访问服务器的问题及解决方案
82 0
|
2月前
|
移动开发 iOS开发 Perl
iOS客户端和h5页面的互相调用,服务器和客户端间通信方式
iOS客户端和h5页面的互相调用,服务器和客户端间通信方式
36 0

热门文章

最新文章