使用异步Post在新浪发微博


</pre><pre name="code" class="objc">#import "ViewController.h"

@interface ViewController ()<NSURLConnectionDataDelegate>
{
    NSMutableData *mPostData;
}
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

- (IBAction)asynchronousPost:(id)sender {
    //获取url
    NSString *urlString = @"https://api.weibo.com/2/statuses/update.json";
    //编码
    urlString = [urlString stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];
    //转换成NSURL
    NSURL *url = [NSURL URLWithString:urlString];
    //oc中用  NSMutableURLRequest 进行Post请求
  NSMutableURLRequest *mAsynRequest = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:10];
    //获取参数
    NSString *bobyString = @"status=Rock%20and%20roll&access_token=2.00bUKyMD0Spw_tebfe20df130tHaM_";
    //编码
    NSData *data = [bobyString dataUsingEncoding:4];
    //方法体设置
    [mAsynRequest setHTTPMethod:@"POST"];
    [mAsynRequest setHTTPBody:data];
    //连接
  NSConnection *connectionPost = [NSURLConnection connectionWithRequest:mAsynRequest delegate:self];
}

#pragma mark-----------------------------------
服务器开始响应,准备向客户发送数据
-(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
{
    mPostData  = [NSMutableData data];
}
//从服务器接收数据,并且此方法会执行很多次
-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
    [mPostData appendData:data];
}
//接收数据完成
-(void)connectionDidFinishLoading:(NSURLConnection *)connection
{
    //Json数据格式解析,利用系统提供的API进行Json数据解析
  NSDictionary *dictionary = [NSJSONSerialization JSONObjectWithData:mPostData options:NSJSONReadingAllowFragments error:nil];
   // NSLog(@"%@",dictionary);
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end






  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值