Skip to content

Response

Response用于封装MNConnection.fetchDev系列方法的响应结果,提供状态字段、头管理和正文解析方法。

new Response(data?: NSData|null,init?: {
status?: number
statusText?: string
headers?: Headers|Array<[string,string]>|Record<string,string>
type?: string
url?: string
redirected?: boolean
error?: string
})

构造一个新的Response实例。

参数名类型必填说明
dataNSData|null响应体数据。传null表示空响应体。
initobject响应元信息配置。

无。

static redirect(url: string,status?: number): Response

创建一个重定向响应对象,仅允许301、302、303、307、308状态码。

参数名类型必填说明
urlstring重定向目标地址。
statusnumber重定向状态码,默认302。
  • 类型:Response
  • 语义:返回新的重定向响应对象。
static error(): Response

创建一个错误响应对象,状态码固定为0,type固定为error

无。

  • 类型:Response
  • 语义:返回错误响应对象。
static new(res: NSHTTPURLResponse,data: NSData,err: NSError,url?: string): Response

把原生网络回调参数封装为Response对象。

参数名类型必填说明
resNSHTTPURLResponse原生响应对象。
dataNSData原始响应体。
errNSError原生错误对象。
urlstring请求URL。
  • 类型:Response
  • 语义:返回封装后的响应对象。
get hasJSONResult(): boolean

判断当前响应体是否可解析为非空JSON对象。

  • 类型:boolean
  • 语义:可解析且非空时返回true
copy(): void

asJSONObject()结果复制到剪贴板,便于调试查看。

无。

  • 类型:void
  • 语义:无返回值。
asJSONObject(): {
status: number
statusText: string
statusCodeDescription: string
headers: Headers
type: string
url: string
error?: string
text?: string|Promise<string>
json?: any
bodySize?: number
}|undefined

将当前响应转为便于展示和记录的结构化对象。

无。

  • 类型:object|undefined
  • 语义:成功时返回结构化对象,异常时返回undefined
_parseBody(body: Uint8Array|string|FormData|null): Uint8Array|null

将不同输入体归一化为Uint8Array

参数名类型必填说明
bodyUint8Array|string|FormData|null待转换的输入体。
  • 类型:Uint8Array|null
  • 语义:可解析时返回字节数组,否则返回null
_setBodyUsed(): void

内部标记方法。当前实现中该方法提前返回,不会真正改变_bodyUsed

无。

  • 类型:void
  • 语义:无返回值。
arrayBuffer(): Promise<ArrayBuffer>

将响应体转换为ArrayBuffer

无。

  • 类型:Promise<ArrayBuffer>
  • 语义:返回异步数组缓冲区结果。
blob(): Promise<Blob>

将响应体转换为Blob,并携带content-type头中的MIME类型。

无。

  • 类型:Promise<Blob>
  • 语义:返回异步Blob结果。
json(): any

将响应体解析为JSON对象。解析失败时返回SyntaxError对象。

无。

  • 类型:any
  • 语义:通常为JSON对象,失败时为错误对象。
text(): string|Promise<string>

将响应体转换为字符串。无响应体时返回空字符串Promise。

无。

  • 类型:string|Promise<string>
  • 语义:返回文本结果或其Promise。
formData(): Promise<FormData>

application/x-www-form-urlencoded形式文本解析为FormData

无。

  • 类型:Promise<FormData>
  • 语义:返回异步FormData结果。
clone(): Response

克隆当前响应对象。若响应体已被消费会抛出TypeError

无。

  • 类型:Response
  • 语义:返回克隆后的新响应对象。
头文件 API 清单

正在加载…

协议:,来源: