异步POST请求解析JSON

 异步POST请求解析JSON

一、创建URL

NSURL *url = [ NSURL URLWithString : @"http://localhost:8080/MJServer/order" ];
   
二、创建一个 请求
NSMutableURLRequest *request = [ NSMutableURLRequest requestWithURL :url];
   
三、设置 请求方法
request.
HTTPMethod = @"POST" ;
   
五、 设置请求体(请求参数)
// 创建一个描述订单信息的 JSON 数据
NSMutableDictionary * orderInfo   = [ NSMutableDictionary dictionary ];
orderInfo [ @"shop_id" ] = @"123 ;
orderInfo [ @" shop_name " ] = @"123" ;
orderInfo [ @" user_id " ] = @"123" ;
// 将字典转化成data
NSData *bodyData= [ NSJSONSerialization dataWithJSONObject :orderInfo options : NSJSONWritingPrettyPrinted error : nil ];
request.
HTTPBody bodyData ;
   
六、 设置请求头:这次请求体的数据不再是普通的参数,而是一个 JSON 数据
[request
setValue : @"application/json" forHTTPHeaderField : @"Content-Type" ];
   
七、 发送请求
[
NSURLConnection sendAsynchronousRequest :request queue :[ NSOperationQueue mainQueue ] completionHandler :^( NSURLResponse *response, NSData *data, NSError *connectionError) {
   
if (data == nil || connectionError) return ;
   
NSDictionary *dict = [ NSJSONSerialization JSONObjectWithData :data options : NSJSONReadingMutableLeaves error : nil ];
   
NSString *error = dict[ @"error" ];
   
if (error) {
         [
MBProgressHUD showError :error];
   }
else {
         
NSString *success = dict[ @"success" ];
         [
MBProgressHUD showSuccess :success];
   }
}];

注意:
 [NSJSONSerialization dataWithJSONObject:orderInfo options:NSJSONWritingPrettyPrinted error:nil]
将JSON转化成二进制数据
[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:nil];
将二进制数据转成JSON
设置请求头:这次请求体的数据不再是普通的参数,而是一个JSON数据
[request
setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值