iphone http

来源:互联网 发布:淘宝卖家注册方法 编辑:程序博客网 时间:2024/05/29 01:53

//http的同步get请求,返回服务器返回的数据

+(NSData *)httpForGET:(NSString *)urlstring addHeaderParams:(NSMutableDictionary*)params{

    

   NSString *allurl = [NSStringstringWithFormat:@"%@",urlstring];

   NSURL* url = [NSURLURLWithString:allurl];

    

    NSMutableURLRequest* request = [[[NSMutableURLRequestalloc]init]autorelease];

    [requestsetURL:url];

    [requestsetHTTPMethod:@"GET"];

    [MyHTTPUtiladdHeaderParams:paramsUrlRequest:request];

    

   NSHTTPURLResponse *urlResponese =nil;

   NSError *error = [[NSErroralloc]init];

   NSData* data = [NSURLConnectionsendSynchronousRequest:request  returningResponse:&urlResponese error:&error];

    //    NSString* result= [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

    NSLog(@"[urlResponese statusCode]:%d",[urlResponesestatusCode]);

   if([urlResponesestatusCode] >=200&&[urlResponesestatusCode]<300){

        

       return data;

    }

    return nil;

    [errorrelease];

    //[result release];

}



//http的同步post请求,返回服务器返回的数据

+(NSData *)httpForPOST:(NSString *)urlstring addHeaderParams:(NSMutableDictionary*)params addParms:(NSData *)dataParms {

    

   NSLog(@"dataParms%@",dataParms);

   NSURL* url = [NSURLURLWithString:urlstring];

    NSLog(@"urlstring:%@",url);

    NSMutableURLRequest* request = [[[NSMutableURLRequestalloc]init]autorelease];

    [requestsetURL:url];

    

    [requestsetHTTPMethod:@"POST"];

    [MyHTTPUtiladdHeaderParams:paramsUrlRequest:request];

    NSLog(@"------dataParmslength:%d",[dataParmslength]);

    [requestsetHTTPBody:dataParms];

    

   NSHTTPURLResponse *urlResponese =nil;

   NSError *error = [[NSErroralloc]init];

   NSData* data = [NSURLConnectionsendSynchronousRequest:requestreturningResponse:&urlResponese error:&error];

   // NSLog(@"%@",error);

    //    NSString* result= [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

   NSLog(@"statusCode:%d",[urlResponesestatusCode]);

    //NSLog(@"statusCode:%@",error);

    [errorrelease];

   if([urlResponesestatusCode] >=200&&[urlResponesestatusCode]<300){

        

       return data;

    }

    return nil;

    

    //    [result release];

}


//设置头文件参数

+(void)addHeaderParams:(NSMutableDictionary*)params UrlRequest:(NSMutableURLRequest*) request{

   if([params count] >0){

       NSArray* paramKeys = [params allKeys];

       for (int i =0; i < [params count]; i++) {

           NSString *key = (NSString*)([paramKeysobjectAtIndex:i]);

           NSString *value = (NSString*)([paramsobjectForKey:key]);

            [requestaddValue: value forHTTPHeaderField:key];

        }

    }

}