第三:HTTP Basic Authentication 的流程图。
第四:实例。
我们按我们一般的情况进行网络请求,返回的结果如下:
如果不明白上面的HTTP Basic Authentication ,这里无论你怎么改,是不加参数还是加参数,服务器给你的返回都是上面的图的结果。
第五:遇到上面情况的解决方法。
a1.客户端请求授权详细说明:接口使用HTTP Basic Authentication认证方式,添加Authorization 到 header, 加密方式 Authorization = Basic Base64.encode(client_key:client_secret);POST请求参数只需grant_type,值为client_credentials
a2.用户请求授权详细说明:接口使用HTTP Basic Authentication认证方式,添加Authorization 到 header, 加密方式 Authorization = Basic Base64.encode(client_key:client_secret);POST请求参数需要grant_type,值为password,以及用户的username和password
第六:实例代码演示。
+(AYTNetworking*)AYTNetworkingLink:(NSString*)TokenStr{
static AYTNetworking * Net = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
// 创建请求对象
Net = [[AYTNetworking alloc]initWithBaseURL:[NSURL URLWithString:AYT_URL]];
AFJSONResponseSerializer * ZSJ_AYT_Response = [AFJSONResponseSerializer serializer];
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
//本博客的关键代码
[Net.requestSerializer setValue:TokenStr forHTTPHeaderField:@"authorization"];
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
NSMutableSet * AYT_Set = [NSMutableSet setWithSet:ZSJ_AYT_Response.acceptableContentTypes];
// 添加数据解析类型
[AYT_Set addObject:@"json/html"];
[AYT_Set addObject:@"text/javascript"];
[AYT_Set addObject:@"text/html"];
[AYT_Set addObject:@"application/json"];
[AYT_Set addObject:@"text/plain"];
ZSJ_AYT_Response.acceptableContentTypes = AYT_Set;
ZSJ_AYT_Response.readingOptions = NSJSONReadingMutableContainers;
ZSJ_AYT_Response.removesKeysWithNullValues = YES;
Net.responseSerializer = ZSJ_AYT_Response;
});
return Net;
}
第七:实例的调用。(关键代码)。
NSString * Str = [NSString stringWithFormat:@"%@:%@",@"ios",@"ios_secret"];
NSData * Data = [Str dataUsingEncoding:NSUTF8StringEncoding];
NSString * Base64 = [Data base64EncodedStringWithOptions:0];
NSString * HJ = [NSString stringWithFormat:@"Basic %@",Base64];
[[AYTNetworking AYTNetworkingLink:HJ]PostAYTURL:@"/oauth2/accessToken" parameters:@{@"grant_type":@"client_credentials"} success:^(id SuccessResponMessage) {
NSLog(@"12:%@",SuccessResponMessage);
} fail:^(id ErrorResponMessage) {
NSLog(@"12:%@",ErrorResponMessage);
} ];
运行输出的结果是:
手机扫一扫
移动阅读更方便
你可能感兴趣的文章