2010-09-23 61 views
2

我有一个产品/购物清单(包括产品对象的名称,product_id等)在iPhone端。我希望将这个列表发送到服务器,在那里我将比较服务器上的列表和来自iphone的列表(合并所做的更改并将合并列表发送回iphone)。我将如何通过HTTP POST发送填充对象的NSArray?

如何将我的数组通过HTTP POST发送到服务器?我知道你可能不能只是发 数组,你就必须将其存储在XML或JSON可能..但我仍想 有一定的可能性之前,我开始编码:)

谢谢事先,

LeWiOn

编辑:解决:)感谢您的帮助家伙!

http://andyj.be.s79833.gridserver.com/blog/?p=65

+0

你*只能*发送数组(例如存档NSKeyedArchiver),但它不会很好的互操作。 ;) – Wevah 2010-09-23 10:40:34

回答

4

的Json似乎是最好的选择。 Xml很沉重,解析起来更复杂。 SBJson库在串行化对象图上做出了卓越的工作。我已经做了这样的过程,但从来没有尝试将我的数组发送到服务器,相反,我比较了服务器和本地的散列,并根据需要下载了新版本。

祝你好运。

编辑 使用SBJSON库,创建对象的JSON表示由像:

[myObject JSONRepresentation] 

SBJSON库可以发现here

编辑: JSON是由性质一个数组或一个词典的表示。如果你的对象是其中的一个,那么一切都会正常运行,如果不是的话,你必须在你的对象中实现proxyForJson方法来序列化它。此方法应返回一个字典,其中的键是属性名称,值是属性值。

+0

有关于如何从一个对象创建JSON的例子?感谢您的答案btw。 – Lewion 2010-09-23 12:34:46

+0

JSONRepresentation返回给我(null)。任何想法为什么?我的对象充满了数据,虽然... – Lewion 2010-09-28 11:26:39

+0

Json本质上是一个数组或一个词典的表示。如果你的对象是其中的一个,那么一切都会正常运行,如果不是的话,你必须在你的对象中实现proxyForJson方法来序列化它。此方法应返回一个字典,其中的键是属性名称,值是属性值。 – VdesmedT 2010-09-28 12:03:28