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