tencent cloud

边缘安全加速平台 EO

动态与公告
产品动态
安全公告
产品公告
产品简介
产品概述
产品优势
应用场景
EdgeOne 与 CDN 等产品功能对比
使用限制
购买指南
试用套餐体验权益说明
免费版套餐使用说明
计费概述
计费项目
购买指引
续费指引
欠费与退款说明
套餐选型对比
关于“干净流量”计费说明
DDoS 防护容量说明
快速入门
选择业务场景
快速接入网站安全加速
通过 Pages 快速部署网站
域名服务与源站配置
域名服务
HTTPS 证书
源站配置
站点加速
概述
访问控制
智能加速
缓存配置
文件优化
网络优化
URL 重写
修改头部
修改应答内容
规则引擎
图片与视频处理
单连接下载限速
DDoS 与 Web 防护
概述
DDoS 防护
Web 防护
Bot 管理
API 资产识别(Beta)
边缘函数
概述
快速指引
操作指引
Runtime APIs
示例函数
实践教程
Pages
四层代理
概述
新建四层代理实例
修改四层代理实例配置
停用/删除四层代理实例
批量配置转发规则
获取客户端真实IP
数据分析与日志服务
日志服务
数据分析
告警服务
站点与计费管理
计费管理
站点管理
版本管理
通用策略
通用参考
配置语法
请求与响应行为
国家/地区及对应代码枚举
Terraform
Terraform 简介
安装和配置 Terraform
实践教程
EdgeOne Skill 使用指南
自动预热/清除缓存
防盗刷/盗链实践
HTTPS 相关实践
加速优化
流量调度
数据分析与告警
第三方日志平台集成实践
对象存储类源站(例如:COS)配置实践
跨域响应配置
API 文档
History
Introduction
API Category
Making API Requests
Site APIs
Acceleration Domain Management APIs
Site Acceleration Configuration APIs
Edge Function APIs
Alias Domain APIs
Security Configuration APIs
Layer 4 Application Proxy APIs
Content Management APIs
Data Analysis APIs
Log Service APIs
Billing APIs
Certificate APIs
Origin Protection APIs
Load Balancing APIs
Diagnostic Tool APIs
Custom Response Page APIs
API Security APIs
DNS Record APIs
Content Identifier APIs
Legacy APIs
Ownership APIs
Image and Video Processing APIs
Multi-Channel Security Gateway APIs
Version Management APIs
Data Types
Error Codes
常见问题
产品特性相关问题
DNS 记录相关问题
域名配置相关问题
站点加速相关问题
数据与日志相关问题
安全防护相关问题
源站配置相关问题
排障指南
异常状态码参考
EdgeOne 4XX/5XX 状态码排障指南
520/524状态码排障指南
521/522 状态码排障指南
工具指南
相关协议
Service Level Agreement
源站防护启用特别约定
TEO 政策
隐私协议
数据处理和安全协议
联系我们
词汇表

iOS

PDF
聚焦模式
字号
最后更新时间: 2023-07-26 15:31:53

API概览

API
描述
会话管理接口
QUIC 请求配置信息
请求任务管理接口
请求数据序列化接口
响应数据序列化接口


TQUICHTTPSessionManager


API
描述
manager
静态方法,构造 TQUICHTTPSessionManager
根据配置构造 TQUICHTTPSessionManager 实例,配置信息见 TQUICURLSessionConfiguration
根据 Url 构造 TQUICHTTPSessionManager 实例
GET
发起 GET 请求
POST
发起 POST 请求

manger

构造 TQUICHTTPSessionManager,使用默认 QUIC 配置

+ (instancetype)manager

initWithSessionConfiguration

创建
TQUICHTTPSessionManager
实例,并传入 QUIC 配置信息

- (instancetype)initWithSessionConfiguration:(nullable TQUICURLSessionConfiguration *)configuration
参数
描述
configuration
QUIC 请求配置,详细信息见:TQUICURLSessionConfiguration

initWithBaseURL

创建
TQUICHTTPSessionManager
实例,并传入url,配置请求参数在此 url 为基础上添加

- (instancetype)initWithBaseURL:(nullable NSURL *)baseURL;

- (instancetype)initWithBaseURL:(nullable NSURL *)baseURL

           sessionConfiguration:(nullable TQUICURLSessionConfiguration *)configuration;
参数
描述
baseURL
请求域名
configuration
QUIC 请求配置,详细信息见:TQUICURLSessionConfiguration

GET

创建 GET 请求

- (nullable TQUICURLSessionDataTask *)GET:(NSString *)URLString

                               parameters:(nullable id)parameters

                                  headers:(nullable NSDictionary <NSString *, NSString *> *)headers

                          timeoutInterval:(NSTimeInterval)timeoutInterval

                         downloadProgress:(nullable TQUICURLSessionTaskDownloadProgressBlock)downloadProgress

                                  success:(nullable TQUICURLSessionTaskSuccess)success

                                  failure:(nullable TQUICURLSessionTaskFailure)failure
参数
描述
URLString
请求 Url
parameters
请求参数
headers
请求 Header 信息
timeoutInterval
连接超时时间
downloadProgress
下载进度回调
success
请求成功回调
failure
请求失败回调

POST

创建 POST 请求

- (nullable TQUICURLSessionDataTask *)POST:(NSString *)URLString

                                parameters:(nullable id)parameters

                                   headers:(nullable NSDictionary <NSString *, NSString *> *)headers

                           timeoutInterval:(NSTimeInterval)timeoutInterval

                            uploadProgress:(nullable TQUICURLSessionTaskUploadProgressBlock)uploadProgress

                                   success:(nullable TQUICURLSessionTaskSuccess)success

                                   failure:(nullable TQUICURLSessionTaskFailure)failure
参数
描述
URLString
请求 Url
parameters
请求参数
headers
请求 Header 信息
timeoutInterval
连接超时时间
uploadProgress
上传进度回调
success
请求成功回调
failure
请求失败回调

TQUICURLSessionTaskSuccess

任务执行成功回调 block
typedef void (^TQUICURLSessionTaskSuccess)(TQUICURLSessionTask *task, id _Nullable responseObject)
参数
描述
task
请求任务
responseObject
响应数据

TQUICURLSessionTaskFailure

任务执行失败回调 block
typedef void (^TQUICURLSessionTaskFailure)(TQUICURLSessionTask * _Nullable task, NSError *error)
参数
描述
task
请求任务
error
错误信息

TQUICURLSessionManager

会话管理接口
API
描述
根据配置构造实例
使用指定 NSURLRequest 参数发起请求
配置请求完成后的数据统计回调
设置接收响应结果回调 block

initWithSessionConfiguration

创建 TQUICURLSessionManager 实例,并传入 QUIC 配置信息
- (instancetype)initWithSessionConfiguration:(nullable TQUICURLSessionConfiguration *)configuration
参数
描述
configuration
QUIC请求配置

dataTaskWithRequest

使用指定 NSURLRequest 参数发起请求
- (TQUICURLSessionDataTask *)dataTaskWithRequest:(NSURLRequest *)request
                                  uploadProgress:(nullable TQUICURLSessionTaskUploadProgressBlock)uploadProgress
                                downloadProgress:(nullable TQUICURLSessionTaskDownloadProgressBlock)downloadProgress
                               completionHandler:(nullable TQUICURLSessionTaskCompletionHandler)completionHandler
参数
描述
request
请求配置,参考系统 NSURLRequest
uploadProgress
上传进度回调
downloadProgress
下载进度回调
completionHandler
请求完成回调

setTaskDidFinishCollectingMetricsBlock

配置请求完成后的数据统计回调
- (void)setTaskDidFinishCollectingMetricsBlock:(nullable TQUICURLSessionTaskDidFinishCollectingMetricsBlock)block
参数
描述
block
请求完成数据统计回调

setTaskDidReceiveResponseBlock

设置接收响应结果回调 block
- (void)setTaskDidReceiveResponseBlock:(nullable TQUICURLSessionTaskDidReceiveResponseBlock)block
参数
描述
block
接收到响应结果后的回调 block

TQUICURLSessionTaskDidReceiveResponseBlock

会话任务收到响应结果回调 block
typedef void (^TQUICURLSessionTaskDidReceiveResponseBlock)(TQUICURLSession *session, TQUICURLSessionTask *task, NSURLResponse *response)
参数
描述
session
会话管理类
task
任务管理类
response
响应结果

TQUICURLSessionTaskDownloadProgressBlock

下载进度回调 block

typedef void (^TQUICURLSessionTaskDownloadProgressBlock)(NSProgress *downloadProgress)
参数
描述
downloadProgress
下载进度

TQUICURLSessionTaskUploadProgressBlock

上传进度回调 block

typedef void (^TQUICURLSessionTaskUploadProgressBlock)(NSProgress *uploadProgress)
参数
描述
uploadProgress
上传进度

QUICURLSessionTaskCompletionHandler

会话执行完成回调 block
typedef void (^TQUICURLSessionTaskCompletionHandler)(NSURLResponse *response, id responseObject, NSError *error)
参数
描述
response
响应结果,参考系统 NSURLResponse
responseObject
响应数据
error
错误信息

TQUICURLSessionTaskDidFinishCollectingMetricsBlock

会话执行完成数据统计回调 block
typedef void (^TQUICURLSessionTaskDidFinishCollectingMetricsBlock)(TQUICURLSession *session, TQUICURLSessionTask *task, TQUICURLSessionTaskMetrics * _Nullable metrics)
参数
描述
session
请求会话管理
task
请求任务管理
metrics
网络状态统计

TQUICURLSessionConfiguration

QUIC 请求参数配置
成员变量
描述
quicVersion
设置QUIC版本号 支持的版本:Q043、Q046、Q050、Q051、draft-29、RFC-V1(RFC 9000) 取值:
TQUICVersionQ043 (默认值)
TQUICVersion046
TQUICVersion050
TQUICVersion051
TQUICVersionDraft29
TQUICVersionRFCV1
congestionType
支持的拥塞算法(CubicBytes、RenoBytes,、BBR、PCC、GCC)
取值:
TQUICCongestionTypeBBR(默认值)
TQUICCongestionTypeCubicBytes
TQUICCongestionTypeRenoBytes
TQUICCongestionTypePCC
TQUICCongestionTypeGCC
connectTimeoutMillis
连接超时时间,单位:毫秒 默认值:60000
idleTimeoutMillis
空闲连接超时时间,影响连接复用,单位:毫秒 默认值:90000
ipv6Enabled
是否支持IPv6,可选 YES 或者 NO 默认值:NO
dnsParser
自定义 DNS 解析代理,参考:TQUICDNSParserDelegate

TQUICDNSParserDelegate

DNS 解析代理,可实现自定义 DNS 解析

- (NSString *)lookup:(NSString *)hostName
参数
描述
hostName
域名,在请求过程中会回调域名,需要返回解析到的 IP 地址

TQUICURLSession

请求任务管理接口
API
描述
根据配置创建实例
根据默认配置创建实例,单例
根据request参数创建请求任务

sessionWithConfiguration

根据配置创建实例
+ (instancetype)sessionWithConfiguration:(TQUICURLSessionConfiguration *)configuration
参数
描述
configuration
配置信息

sharedSession

根据默认配置创建实例,单例
+ (instancetype)sharedSession

dataTaskWithRequest

根据 request 参数创建请求任务
- (nullable TQUICURLSessionDataTask *)dataTaskWithRequest:(NSURLRequest *)request
参数
描述
request
请求参数,参考系统 NSURLRequest

TQUICURLSessionTask

求任务管理接口
API
描述
resume
启动请求
cancel
取消请求

resume

开始请求

- (void)resume

cancel

取消请求

- (void)cancel

TQUICURLSessionDataTask

请求任务管理接口,扩展 TQUICURLSessionTask 协议
API
描述
resume
启动请求
cancel
取消请求

resume

开始请求

- (void)resume

cancel

取消请求

- (void)cancel

TQUICURLRequestSerialization

API
描述
http 请求参数序列化
JSON 请求参数序列化

TQUICHTTPRequestSerializer

请求数据序列化接口
API
描述
实例化
setValue
设置 Header 值
根据 Header 字段返回对应的值
创建 NSMutableURLRequest
创建 NSMutableURLRequest,用于传输流式数据

serializer

构造 TQUICHTTPRequestSerializer 实例
+ (instancetype)serializer

setValue

设置 Header 值
- (void)setValue:(nullable NSString *)value forHTTPHeaderField:(NSString *)field
参数
描述
value
Header 值
field
Header 字段

valueForHTTPHeaderField

根据 Header 字段返回对应的值
- (nullable NSString *)valueForHTTPHeaderField:(NSString *)field
参数
描述
field
Header 字段

requestWithMethod

创建 NSMutableURLRequest
- (nullable NSMutableURLRequest *)requestWithMethod:(NSString *)method

                                          URLString:(NSString *)URLString

                                         parameters:(nullable id)parameters

                                              error:(NSError * _Nullable __autoreleasing *)error
参数
描述
method
设置请求方法,get、post、put、delete、head、patch 等 http 标准支持的方法
URLString
请求 Url
parameters
请求参数
error
错误信息,NSError

multipartFormRequestWithMethod

- (NSMutableURLRequest *)multipartFormRequestWithMethod:(NSString *)method

                                              URLString:(NSString *)URLString

                                             parameters:(nullable NSDictionary <NSString *, id> *)parameters

                              constructingBodyWithBlock:(nullable void (^)(id <TQUICMultipartFormData> formData))block

                                                  error:(NSError * _Nullable __autoreleasing *)error
参数
描述
method
设置请求方法,get、post、put、delete、head、patch 等 http 标准支持的方法
URLString
请求 Url
parameters
请求参数
constructingBodyWithBlock
使用 Block 方式构建 body 内容
error
错误信息,NSError

TQUICJSONRequestSerializer

API
描述
创建实例

serializerWithWritingOptions

根据 JSON 序列化选项创建 TQUICJSONRequestSerializer 实例
+ (instancetype)serializerWithWritingOptions:(NSJSONWritingOptions)writingOptions
参数
描述
writingOptions
根据 JSON 序列化选项创建实例,参考系统 NSJSONWritingOptions

TQUICMultipartFormData

多分块表单数据上传
API
描述
通过配置文件路径上传表单数据
通过输入流上传表单数据
分块上传表单数据
添加数据分块
把 Headers 和数据内容添加到表单
上传带宽限制

appendPartWithFileURL

通过指定文件路径上传表单数据
- (BOOL)appendPartWithFileURL:(NSURL *)fileURL
                         name:(NSString *)name
                        error:(NSError * _Nullable __autoreleasing *)error
参数
描述
fileURL
添加到表单的文件路径
name
关联文件名称
error
错误信息返回

appendPartWithInputStream

通过指定输入流上传数据
- (void)appendPartWithInputStream:(nullable NSInputStream *)inputStream
                             name:(NSString *)name
                         fileName:(NSString *)fileName
                           length:(int64_t)length
                         mimeType:(NSString *)mimeType
参数
描述
inputStream
输入流
name
关联输入流的名称
fileName
关联输入流文件名
length
流数据长度(单位 bytes )
mimeType
MIME Type(例如:image/jpeg,详细参考 HTTP 协议标准)

appendPartWithFileData

分块上传表单数据
- (void)appendPartWithFileData:(NSData *)data
                          name:(NSString *)name
                      fileName:(NSString *)fileName
                      mimeType:(NSString *)mimeType
参数
描述
data
添加到表单的数据
name
关联数据的名称
fileName
关联数据文件名
mimeType
MIME Type(例如:image/jpeg,详细参考 HTTP 协议标准)

appendPartWithFormData

添加数据块
- (void)appendPartWithFormData:(NSData *)data
                          name:(NSString *)name
参数
描述
data
添加到表单的数据
name
关联数据名称

appendPartWithHeaders

把 Headers 和数据内容添加到表单
- (void)appendPartWithHeaders:(nullable NSDictionary <NSString *, NSString *> *)headers
                         body:(NSData *)body;
参数
描述
headers
要添加 headers 内容
body
添加到表单的数据

throttleBandwidthWithPacketSize

上传带宽限制
- (void)throttleBandwidthWithPacketSize:(NSUInteger)numberOfBytes
                                  delay:(NSTimeInterval)delay
参数
描述
numberOfBytes
数据包最大值(单位:bytes,默认值:16kb)
delay
数据包读取时延(默认值:0)



TQUICURLResponseSerialization

响应数据序列化接口
API
描述
http 响应数据序列化
JSON 响应数据序列化

TQUICHTTPResponseSerializer

响应数据序列化接口
API
描述
实例化
检查响应数据是否合法

serializer

构造 TQUICHTTPResponseSerializer 实例
+ (instancetype)serializer

validateResponse

检查响应数据是否合法
- (BOOL)validateResponse:(nullable NSHTTPURLResponse *)response

                    data:(nullable NSData *)data

                   error:(NSError * _Nullable __autoreleasing *)error
参数
描述
response
要校验的返回结果,详见:NSHTTPURLResponse
data
返回的数据
error
校验过程出错信息

TQUICJSONResponseSerializer

API
描述
创建实例

serializerWithWritingOptions

根据 JSON 序列化选项创建 TQUICJSONResponseSerializer 实例
+ (instancetype)serializerWithReadingOptions:(NSJSONReadingOptions)readingOptions
参数
描述
serializerWithReadingOptions
根据 JSON 序列化选项创建实例,参考系统 NSJSONReadingOptions

TQUICURLSessionTaskMetrics

QUIC 网络状态统计,一次会话统计
属性
描述
transactionMetrics
数组,由于有重定向,一次会话会包含多次请求,每次请求的统计内容见:TQUICURLSessionTaskTransactionMetrics
taskInterval
任务耗时,从任务创建到执行完成的时间间隔
redirectCount
重定向次数

TQUICURLSessionTaskTransactionMetrics

QUIC 网络状态统计,一次请求统计
属性
描述
isValid
状态值是否有效
isQuic
是否 QUIC 请求
is0rtt
是否为 0-RTT 连接
isConnReuse
是否为连接复用
connectMillis
获取连接耗时,单位:毫秒
dnsMillis
获取 dns 耗时,单位:毫秒
dnsCode
获取 dns 错误码
ttfbMillis
获取首包耗时,单位:毫秒
completeMillis
获取请求完成时间(不含连接耗时),单位:毫秒
srttMicros
获取滑动平均rtt,单位:毫秒
packetsSent
获取发包量,单位:byte
packetsRetransmitted
获取重传包量,单位:byte
bytesSent
获取发送字节数,单位:byte
bytesRetransmitted
获取重传字节数,单位:byte
packetsLost
获取丢包量,单位:byte
packetsReceived
获取收包量,单位:byte
bytesReceived
获取收到字节数,单位:byte
streamBytesReceived
获取stream层收到的字节数,单位:byte



帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈