From 60bb4ce8d3ef0f8a324c6844cc990405de5d2e0f Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期五, 05 三月 2021 11:06:13 +0800 Subject: [PATCH] 2021-03-05 1.更新 --- Demo/EZOpensdk_iOS_4.15.1_build20201104/Demo/EZOpenSDKDemo/Global/EZHttpUtil.m | 59 ++++++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 40 insertions(+), 19 deletions(-) diff --git a/Demo/EZOpensdk_iOS_4.15.1_build20201104/Demo/EZOpenSDKDemo/Global/EZHttpUtil.m b/Demo/EZOpensdk_iOS_4.15.1_build20201104/Demo/EZOpenSDKDemo/Global/EZHttpUtil.m index 8f37e15..8b9150b 100644 --- a/Demo/EZOpensdk_iOS_4.15.1_build20201104/Demo/EZOpenSDKDemo/Global/EZHttpUtil.m +++ b/Demo/EZOpensdk_iOS_4.15.1_build20201104/Demo/EZOpenSDKDemo/Global/EZHttpUtil.m @@ -11,6 +11,7 @@ #import <CommonCrypto/CommonDigest.h> #import "AFNetworking.h" +#define TestRequestHttpsHost @"https://test-gz.hdlcontrol.com" #pragma mark API #define API_POST_EZ_AddDevice @"/home-wisdom/platform/childAddDevice" #define API_POST_EZ_GetChildToken @"/home-wisdom/platform/childToken" @@ -23,20 +24,29 @@ #define SECRET_KEY @"WeJ8TY88vbakCcnvH8G1tDUqzLWY8yss" +#define TIME_OUT 15.0f + @implementation EZHttpUtil #pragma mark -鎺ュ彛璇锋眰閮ㄥ垎 - - +/// sharedManager ++ (id)sharedManager { + static dispatch_once_t once; + static id instance; + dispatch_once(&once, ^{ + instance = [self new]; + }); + return instance; +} /** * @since 娌充笢鑾峰彇瀛愯处鍙穞oken鐨勬帴鍙� * * @param block 鍥炶皟block */ -+ (void)getChildToken:(void (^)(NSString *accessToken))block{ +- (void)getChildToken:(void (^)(NSString *accessToken))block{ //2.璁剧疆璇锋眰鍙傛暟 NSMutableDictionary *parameters = [NSMutableDictionary dictionary]; @@ -63,9 +73,8 @@ * @param verifyCode 璁惧楠岃瘉鐮� * @param completion 鍥炶皟block锛宔rror涓虹┖鏃惰〃绀烘坊鍔犳垚鍔� * - * @return operation */ -+ (void)addDeviceByHDL:(NSString *)deviceSerial +- (void)addDeviceByHDL:(NSString *)deviceSerial verifyCode:(NSString *)verifyCode completion:(void (^)(ResponseData *responseData))completion{ @@ -91,9 +100,8 @@ * @param deviceSerial 璁惧搴忓垪鍙� * @param completion 鍥炶皟block锛宔rror涓虹┖鏃惰〃绀烘坊鍔犳垚鍔� * - * @return operation */ -+ (void)deleteDeviceByHDL:(NSString *)deviceSerial completion:(void (^)(ResponseData *responseData))completion{ +- (void)deleteDeviceByHDL:(NSString *)deviceSerial completion:(void (^)(ResponseData *responseData))completion{ //1.璁剧疆璇锋眰鍙傛暟 NSMutableDictionary *parameters = [NSMutableDictionary dictionary]; [parameters setValue:deviceSerial forKey:@"deviceSerial"]; @@ -112,7 +120,7 @@ /// 鍒锋柊token /// @param block 缁撴灉 -+ (void)refreshHDLToken:(void (^)(BOOL isSuccess))block{ +- (void)refreshHDLToken:(void (^)(BOOL isSuccess))block{ //1.璁剧疆璇锋眰鍙傛暟 NSMutableDictionary *parameters = [NSMutableDictionary dictionary]; @@ -149,7 +157,7 @@ /// @param apiPath 鎺ュ彛鍦板潃 /// @param parameters 璇锋眰鍙傛暟 /// @param completion 璇锋眰鍝嶅簲鍙傛暟 -+ (void)requestHttpsPost:(NSString *)apiPath +- (void)requestHttpsPost:(NSString *)apiPath parameters:(NSMutableDictionary *)parameters completion:(void (^)(ResponseData *responseData))completion{ @@ -177,14 +185,14 @@ /// @param apiPath 鎺ュ彛鍦板潃 /// @param parameters 璇锋眰鍙傛暟 /// @param completion 璇锋眰鍝嶅簲鍙傛暟 -+ (void)requestHttpsBase:(NSString *)apiPath +- (void)requestHttpsBase:(NSString *)apiPath parameters:(NSMutableDictionary *)parameters completion:(void (^)(ResponseData *responseData))completion{ //1,鍒涘缓浣犲緱璇锋眰url - NSString *URL = @""; - if([GlobalKit shareKit].GlobalRequestHttpsHost == NULL){ - URL = @"https://test-gz.hdlcontrol.com"; + NSString *URL = [GlobalKit shareKit].GlobalRequestHttpsHost; + if([self stringIsNullOrEmpty:URL]){ + URL = TestRequestHttpsHost; } URL = [NSString stringWithFormat:@"%@%@", URL, apiPath]; @@ -195,7 +203,7 @@ //3.request NSMutableURLRequest * request = [[AFJSONRequestSerializer serializer] requestWithMethod:@"post" URLString:URL parameters:parameters error:nil]; - request.timeoutInterval = 10.0f; + request.timeoutInterval = TIME_OUT; [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]; [request setValue:@"application/json" forHTTPHeaderField:@"Accept"]; [request setValue:GlobalKit.shareKit.hdlAccessToken forHTTPHeaderField:@"Authorization"]; @@ -224,7 +232,7 @@ /** * 鍩虹鏈嶅姟鐨勬帴鍙i兘瑕佹牎楠宻ign */ -+(NSMutableDictionary *)GetSignRequestDictionary:(NSMutableDictionary *)params{ +-(NSMutableDictionary *)GetSignRequestDictionary:(NSMutableDictionary *)params{ if(params == NULL){ params =[NSMutableDictionary dictionary]; } @@ -251,7 +259,7 @@ newString = [newString substringToIndex:[newString length] - 1]; newString = [newString stringByAppendingString: SECRET_KEY]; //2.4 MD5杞崲+杞皬鍐� - if(newString == nil || newString == NULL){ + if([self stringIsNullOrEmpty:newString]){ newString = @""; } NSString* signstr = [self signMD5Encrypt:newString]; @@ -260,10 +268,23 @@ return params; } + +/// 瀛楃涓插垽绌� +/// @param valueStr 浼犲叆鍒ゆ柇瀛楃 +- (BOOL)stringIsNullOrEmpty:(NSString *)valueStr +{ + if((valueStr == nil || [valueStr isKindOfClass:[NSNull class]] || valueStr.length == 0)){ + return YES; + }else{ + return NO; + } + +} + /** MD5杞崲+杞皬鍐� */ -+ (NSString*)signMD5Encrypt:(NSString *)str +- (NSString*)signMD5Encrypt:(NSString *)str { const char *cStr = [str UTF8String]; unsigned char digest[CC_MD5_DIGEST_LENGTH]; @@ -283,8 +304,8 @@ /// </summary> /// <param name="valueStr"></param> /// <returns></returns> -+(bool)IfValueNeedSign:(NSString *)valueStr{ - if (( (valueStr == nil || [valueStr isKindOfClass:[NSNull class]] || valueStr.length == 0))//鍒ょ┖瀛楃 +-(bool)IfValueNeedSign:(NSString *)valueStr{ + if (( [self stringIsNullOrEmpty:valueStr])//鍒ょ┖瀛楃 || ([[valueStr substringToIndex:1] isEqual:@"{"])//鍒ゆ柇鏄惁涓哄璞� || ([[valueStr substringToIndex:1] isEqual:@"["])//鍒ゆ柇鏄惁涓烘暟缁� ) { -- Gitblit v1.8.0