我正在制作一个具有撰写后期功能的IOS应用程序 用户通过UITextView实例键入文本,可以包含断路器 并且应用程序将帖子发送到rails服务器 http主体(内容类型:application / json,name:String,text:String)如下所示:
"{\"name\":\"\(name)\", \"text\":\"\(text)\"}".dataUsingEncoding(NSUTF8StringEncoding)
问题是“\ n”。
如果包含“\ n”rails服务器的文本引发解析错误,因为JSON接受“\\ n”但不接受“\ n”。
所以我需要在制作JSON表单之前将文本中的所有“\ n”更改为“\\ n”,我认为这是非常糟糕的方式。
我相信有更好的方法,比如“将字符串更改为JSON格式的内置方法”或“文本视图设置”或“以其他方式制作http正文”......
答案 0 :(得分:0)
在iOS上创建JSON的正确方法是创建一个可以序列化为JSON(NSDictionary
或NSArray
)的对象,并使用NSJSONSerialization方法将其转换为可以发送到的数据服务器
在您的示例中,我将执行以下操作:
let obj = ["name": name, "text": text]
let jsonData = NSJSONSerialization.dataWithJSONObject(obj, options: .PrettyPrinted, error: nil)
那应该为你做所有必要的工作。