文档章节

iOS网络 POST通过JSON传数据到后台

沉恋
 沉恋
发布于 2015/02/17 16:25
字数 236
阅读 74
收藏 1

后台php脚本代码

<?php 
header('Content-Type:text/plain;charset=utf-8');

$json = file_get_contents('php://input');
// 反序列化JSON
$obj = json_decode($json, TRUE ); 

// 打印对象明细信息
print_r(json_encode($obj));
    
?>



iOS上的代码如下

//
//  ViewController.m
//  POST 通过JSON传数据
//
//  Created by chen on 15/2/17.
//  Copyright (c) 2015年 lanrw. All rights reserved.
//

#import "ViewController.h"
#import "Person.h"

@interface ViewController ()

@property (nonatomic,strong) Person *person;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
}

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    [self postJson];
}

- (void)postJson
{
    NSURL *url = [NSURL URLWithString:@"http://localhost/post/postjson.php"];
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:1 timeoutInterval:15];
    request.HTTPMethod = @"post";
    // 自定义字典
    NSDictionary *dict = @{@"name":@"bbb",@"age":@(11)};
    // 字典转模型
    self.person = [Person personWithDict:dict];
    // 模型转字典 --- 取其中一个键值
    NSDictionary *dict1 = [self.person dictionaryWithValuesForKeys:@[@"age"]];
    // 序列化
    NSData *data = [NSJSONSerialization dataWithJSONObject:dict1 options:0 error:NULL];
    request.HTTPBody = data;
    [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
        id res = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
        NSLog(@"%@",res);
    }];
}

@end
测试的话可以去掉字典转模型的步骤,直接传字典进行序列化的

http://pan.baidu.com/s/1dDCOcKD


© 著作权归作者所有

共有 人打赏支持
沉恋
粉丝 9
博文 148
码字总数 63031
作品 0
苏州
AFNetworking是一个为 iOS 和 Mac OSX 制作的令人愉快的网络库

AFNetworking是一个为 iOS 和 Mac OSX 制作的令人愉快的网络库,它建立在URL 装载系统框架的顶层,内置在Cocoa里,扩展了强有力的高级网络抽象。它的模块架构被良好的设计,拥有丰富的功能,...

lewis-180
2015/04/02
0
0
使用Swift读取Cookie内容

前言 一个http请求中,我们经常会涉及到Get请求的URL Param,POST请求的HTTP Body,Response Json,这些都是一个标准REST API标配的元素。 在一些安全验证的API中,通常会涉及到Cookie。当用...

DragonFK
2015/07/12
0
0
iOS基础深入补完计划--NSURLSession使用详解(附Demo)

目录 前言 API Demo 前言 本文主要是把NSURLSession以及NSURLSessionTask相关的代理方法全部整理了一下。 旨在大体了解在一个iOS网络请求中、一个任务究竟经理了什么。 而我们、又能做些什么...

kirito_song
05/10
0
0
(转)直接拿来用!最火的iOS开源项目(一)

AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目。AFNetworking是一个轻量级的iOS、Mac OS X网络通信类库,现在是GitHub上第三大Objective-C库。它建立在...

孙启超
2013/06/21
0
0
IOS网络--AFNetworking

http://cocoadocs.org/docsets/AFNetworking/2.5.0/ AFNetworking的用法 提交GET请求和POST请求 AFNetworking是第三方框架,阅者自行去官网上下载、安装。 1>创建AFHTTPRequestOpeartionMan...

求是科技
2015/03/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

SQL count(*) 和count(1)的区别

开发中经常会使用这两个聚合函数,作用都是用来统计记录行,今天查找资料发现,其实这两个函数并没有区别, 实践才是检验的标准,首先看执行计划(表是我自己建立的): 可以看到,两个执行计...

一曲图森破
15分钟前
1
0
ppwjs之bootstrap文字排版:字体设置

<!DOCTYPT html><html><head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><title>ppwjs欢迎您</title><link rel="icon" href="/favicon.ico" ......

ppwjs
18分钟前
1
0
区块链100讲:详解区块链之P2P网络

1 P2P网络 如果我们简单来看 P2P 技术,它的应用领域已经非常广泛了,从流媒体到点对点通讯、从文件共享到协同处理,多种领域都有它的身影出现。 同样的,P2P 的网络协议也有很多,比较常见的...

HiBlock
33分钟前
0
0
74.expect脚本同步文件以及指定host同步文件 构建分发系统文件和命令

20.31 expect脚本同步文件: 在expect脚本中去实现在一台机器上把文件同步到另外一台机器上去。核心命令用的是rsync ~1.自动同步文件 #!/usr/bin/expect set passwd "123456" spawn rsync -a...

王鑫linux
57分钟前
1
0
TypeScript项目引用(project references)

转发 TypeScript项目引用(project references) TypeScript新特性之项目引用(project references) 项目引用是TypeScript 3.0中的一项新功能,允许您将TypeScript程序构建为更小的部分。 通过这...

durban
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部