zl程序教程

您现在的位置是:首页 >  前端

当前栏目

AFNetworking2.0简易GET,POST请求封装以及使用

封装 以及 请求 get 简易 post 使用
2023-09-14 08:57:16 时间

AFNetworking2.0简易GET,POST请求封装以及使用

AFNetworking不用我赘述其强大性,本人仅仅做了非常简易的封装,解决了有时候请求出错的问题,提供源码给大家。

封装源码库下载地址:

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

源码:

Networking.h 与 Networking.m

//

// Networking.h

// Weather

// Created by YouXianMing on 15/01/01.

// Copyright (c) 2014年 YouXianMing. All rights reserved.

#import Foundation/Foundation.h 

#import "AFNetworking.h"

@interface Networking : NSObject

#pragma mark - GET请求

+ (void)GET:(NSString *)urlString

 parameters:(id)parameters

 success:(void (^)(AFHTTPRequestOperation *operation, id responseObject))success

 failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))failure;

#pragma mark - POST请求

+ (void)POST:(NSString *)urlString

 parameters:(id)parameters

 success:(void (^)(AFHTTPRequestOperation *operation, id responseObject))success

 failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))failure;

@end


//

// Networking.m

// Weather

// Created by YouXianMing on 15/01/01.

// Copyright (c) 2014年 YouXianMing. All rights reserved.

#import "Networking.h"

@implementation Networking

+ (void)GET:(NSString *)urlString

 parameters:(id)parameters

 success:(void (^)(AFHTTPRequestOperation *operation, id responseObject))success

 failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))failure {

 AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];

 // 防止解析不出来

 manager.responseSerializer.acceptableContentTypes = \

 [manager.responseSerializer.acceptableContentTypes setByAddingObject:@"text/html"];

 [manager GET:urlString

 parameters:parameters

 success:^(AFHTTPRequestOperation *operation, id responseObject) {

 if (success) {

 success(operation, responseObject);

 failure:^(AFHTTPRequestOperation *operation, NSError *error) {

 if (failure) {

 failure(operation, error);

+ (void)POST:(NSString *)urlString

 parameters:(id)parameters

 success:(void (^)(AFHTTPRequestOperation *operation, id responseObject))success

 failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))failure {

 AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];

 // 防止解析不出来

 manager.responseSerializer.acceptableContentTypes = \

 [manager.responseSerializer.acceptableContentTypes setByAddingObject:@"text/html"];

 [manager POST:urlString

 parameters:parameters

 success:^(AFHTTPRequestOperation *operation, id responseObject) {

 if (success) {

 success(operation, responseObject);

 failure:^(AFHTTPRequestOperation *operation, NSError *error) {

 if (failure) {

 failure(operation, error);

@end

GET请求带参数与不带参数之间的转换:

POST请求:

源码修改的地方:


搭建一个包含多种Get请求和Post请求的工具类 在工作的过程中经常会遇到需要调用接口的场景,用得多了就写了一个请求的工具类,以后再遇到需要Get请求或者Post请求的情况直接调用就行。