从 iOS 向 ASP.NET WebServices 发送数据

本文介绍了如何在iOS应用中利用UIImagePickerController实现拍照功能,并通过RESTful接口将照片和文字描述上传到ASP.NET WebServices。在服务器端,通过ASP.NET的WebService原生支持REST,实现数据接收。在iOS端,选择了REST API因其简洁的代码实现。需注意配置Web.config以允许HttpGet和HttpPost协议。
摘要由CSDN通过智能技术生成

我第一个 iOS 上的项目需求:利用 iOS 拍照功能在工作现场拍照;并对照片进行文字描述;最后将照片和文字描述上传到服务器。


需求分为两个功能点:

1. 调用 iOS 的拍照功能

2. 调用 iOS 的无线功能上传数据


第一点好办,iOS 为简单的拍照功能提供了一个控件 UIImagePickerControler,而且还有官方的例程 PhotoPicker 供参考。

第二点有点儿小复杂。首先面临的问题是使用哪种网络传输方式,然后是使用哪种技术实现服务器端。前者我在REST和SOAP中选择了比较简单的REST,原因是 iOS 端的代码写起来比较简单。后者我选择了ASP.NET/C#,毕竟微软的东西对开发人员还是蛮友好的。针对大家对我使用的技术的简陋,我表示情绪稳定。


ASP.NET 实现 WebServices 相当的简便。使用ASP.NET Web Services Application 项目模板,然后定义需要的 WebMethod 即可。而且重要的是 ASP.NET 的 WebService 原生就支持 REST 访问。需要注意的是:必须在 Web.config 文件中添加对 REST 访问方式的许可。否则 iOS 端的 REST 访问会失败。

  1. <system.web>  
  2.   ......  
  3.     
  4.   <webServices>  
  5.     <protocols>  
  6.       <add name="HttpGet"/>  
  7.       <add name="HttpPost"/>  
  8.     </protocols>  
  9.   </webServices>  
  10.   
  11. </system.web>  

iOS 端主要利用 NSURLRequest 和 NSURLConnection 实现对 WebServices 的访问。需要注意的是:HTTP 字段 Content-Type 的值应该设置为 multipart/form-data。这样在 WebServices 端就可以直接使用 Context.Request (HttpRequest) 的 Files 和 Form 属性来访问接收到的文件和文本了。


源码:

1. 拍照并上传照片和说明的 iOS 客户端

2. 接收图片和文字的 ASP.NET WebService


参考资料:

1. iOS开发之结合asp.net webservice实现文件上传下载

2. WebService [How-To]

3. How to Write an iOS App That Uses a Web Service

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值