QNHttpRegionRequest.h 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. //
  2. // QNHttpRequest.h
  3. // QiniuSDK
  4. //
  5. // Created by yangsen on 2020/4/29.
  6. // Copyright © 2020 Qiniu. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import "QNHttpSingleRequest.h"
  10. #import "QNUploadRegionInfo.h"
  11. NS_ASSUME_NONNULL_BEGIN
  12. @class QNUploadRequestState, QNResponseInfo, QNConfiguration, QNUploadOption, QNUpToken, QNUploadRegionRequestMetrics;
  13. typedef void(^QNRegionRequestCompleteHandler)(QNResponseInfo * _Nullable responseInfo, QNUploadRegionRequestMetrics * _Nullable metrics, NSDictionary * _Nullable response);
  14. @interface QNHttpRegionRequest : NSObject
  15. @property(nonatomic, strong, readonly)QNConfiguration *config;
  16. @property(nonatomic, strong, readonly)QNUploadOption *uploadOption;
  17. - (instancetype)initWithConfig:(QNConfiguration *)config
  18. uploadOption:(QNUploadOption *)uploadOption
  19. token:(QNUpToken *)token
  20. region:(id <QNUploadRegion>)region
  21. requestInfo:(QNUploadRequestInfo *)requestInfo
  22. requestState:(QNUploadRequestState *)requestState;
  23. - (void)get:(NSString * _Nullable)action
  24. headers:(NSDictionary * _Nullable)headers
  25. shouldRetry:(BOOL(^)(QNResponseInfo * _Nullable responseInfo, NSDictionary * _Nullable response))shouldRetry
  26. complete:(QNRegionRequestCompleteHandler)complete;
  27. - (void)post:(NSString * _Nullable)action
  28. headers:(NSDictionary * _Nullable)headers
  29. body:(NSData * _Nullable)body
  30. shouldRetry:(BOOL(^)(QNResponseInfo * _Nullable responseInfo, NSDictionary * _Nullable response))shouldRetry
  31. progress:(void(^_Nullable)(long long totalBytesWritten, long long totalBytesExpectedToWrite))progress
  32. complete:(QNRegionRequestCompleteHandler)complete;
  33. - (void)put:(NSString *)action
  34. headers:(NSDictionary * _Nullable)headers
  35. body:(NSData * _Nullable)body
  36. shouldRetry:(BOOL(^)(QNResponseInfo *responseInfo, NSDictionary *response))shouldRetry
  37. progress:(void(^)(long long totalBytesWritten, long long totalBytesExpectedToWrite))progress
  38. complete:(QNRegionRequestCompleteHandler)complete;
  39. @end
  40. NS_ASSUME_NONNULL_END