Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 在线存储我的ObJ-C类。(亚马逊网络服务?)_Iphone_Objective C_Cocoa Touch_Json_Amazon S3 - Fatal编程技术网

Iphone 在线存储我的ObJ-C类。(亚马逊网络服务?)

Iphone 在线存储我的ObJ-C类。(亚马逊网络服务?),iphone,objective-c,cocoa-touch,json,amazon-s3,Iphone,Objective C,Cocoa Touch,Json,Amazon S3,好的,这是一个相当广泛的问题。这是我的第一个应用程序,我不确定最好的方法。该应用程序在IPHONE上 我有一门“餐馆”课。这家餐厅有许多不同的特点和开业时间。 我目前将餐厅存储在nsdata实例中(它符合NSCoding),本地存储很简单,我只使用nsdata 我刚刚内置了一个导入/导出功能。我想用这两种方法把一家餐馆“发布”到网上,然后从网上“获取”一家餐馆。我知道我可以用NSUrlConnection做到这一点,我已经准备好并开始工作了 不过我想更聪明一点。例如,如果我想获取已提交的餐厅在线

好的,这是一个相当广泛的问题。这是我的第一个应用程序,我不确定最好的方法。该应用程序在IPHONE上

我有一门“餐馆”课。这家餐厅有许多不同的特点和开业时间。 我目前将餐厅存储在nsdata实例中(它符合NSCoding),本地存储很简单,我只使用nsdata

我刚刚内置了一个导入/导出功能。我想用这两种方法把一家餐馆“发布”到网上,然后从网上“获取”一家餐馆。我知道我可以用NSUrlConnection做到这一点,我已经准备好并开始工作了

不过我想更聪明一点。例如,如果我想获取已提交的餐厅在线列表,并构建一个也可以与数据交互的web界面,该怎么办

这就是我目前的想法: 创建一个将我的类转换为文本表示的“toString”方法。然后将字符串存储在服务器上。这将取代在线存储数据。这听起来合适吗

然而,我希望能够查询餐厅的数量,并对我的在线“数据库”有更多的控制。XML是答案吗?我刚开始研究AmazonWeb服务,学习Json或Rest

有什么建议吗

谢谢


Dan

我对iPhone的开发还不是很熟悉,但如果有合理简单的方式使用web服务,我建议将其与类型化参数一起使用。这也将使这些服务从其他系统中更“可用”,它们不需要知道如何将对象序列化/打包为字符串,只需要知道如何调用函数:storeRestaurang(字符串名称、int评级…)等


这是一篇我将亲自查看的文章,因为我希望进一步了解iPhone的开发:

看起来你想使用plist。 任何cocoa集合类都可以写入plist,plist是一种xml文件。最妙的是,如果您使用标准的cocoa值类,您可以写出集合,稍后再读回

NSString、NSNumber、NSDate、NSData、NSAray、NSDictionary对象可以放入一个集合中,并直接存储到plist。其他类必须序列化为NSData,然后作为plist写入磁盘。对于真正的自定义数据,NSKeyedArchiver可能是您想要的

对于简单的字符串和数字数据,请将其全部打包到NSDictionary中,然后将其写入plist。现在看看你的mac电脑,你会发现plists是多么受欢迎


了解REST,它是提供基于web的API的最简单、最干净的方法。有些框架,比如RubyonRails,提供了一个现成的REST接口

然后,您需要找到一种将iPhone上的对象转换为REST友好格式的方法。XML和JSON都是可选的,但不幸的是,我还没有看到任何可以真正推荐的转换XML或JSON的代码,因为我还没有尝试过任何代码。但是,有些项目可能会把你引向正确的方向。其中最有希望的是:


感谢您的回复,Ryan。了不起的贡献。我目前使用nskeyedarchiver和nsdata存储我的餐厅。我会使用plist,但我目前有自定义类,如“Restaurant”和“TimeEntry”。这些类的实例变量只是标准类。