你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

RestError class

从 HTTP 请求到服务终结点导致的错误。

扩展

Error

构造函数

RestError(string, string, number, WebResourceLike, HttpOperationResponse)

属性

code

错误代码(如果有)。 可以是静态错误代码属性之一(REQUEST_SEND_ERROR/PARSE_ERROR),也可以是基础系统调用(E_NOENT)中的字符串代码。

details

任何其他详细信息。 对于反序列化错误,可以处理响应。

PARSE_ERROR

用于标识分析传入 HTTP 响应时可能出现的错误的常量字符串。 通常表示格式不正确的 HTTP 正文,例如不完整的编码 JSON 有效负载。

request

传出请求。

REQUEST_SEND_ERROR

一个常量字符串,用于标识发出 HTTP 请求时可能出现的错误,该请求指示传输层出现问题(例如无法通过 DNS 解析 URL 的主机名)。

response

传入响应。

statusCode

如果返回了响应的 HTTP 状态代码。

继承属性

message
name
stack
stackTraceLimit

Error.stackTraceLimit 属性指定堆栈跟踪收集的堆栈帧数(无论是由 new Error().stack 还是 Error.captureStackTrace(obj)生成)。

默认值为 10 but can be set to any valid JavaScript number. 更改将影响在更改值 捕获的任何堆栈跟踪。

如果设置为非数字值或设置为负数,则堆栈跟踪将不会捕获任何帧。

继承的方法

captureStackTrace(object, Function)

在 上创建一个 .stack 属性,该属性在访问时返回一个字符串,该字符串 targetObject表示调用的代码 Error.captureStackTrace() 中的位置。

const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack;  // Similar to `new Error().stack`

跟踪的第一行将以 为 ${myObject.name}: ${myObject.message}前缀。

optional constructorOpt 参数接受一个函数。 如果给定,则 上面的 constructorOpt所有帧 ,包括 constructorOpt,将从生成的堆栈跟踪中省略。

constructorOpt 参数可用于向用户隐藏错误生成的实现详细信息。 例如:

function a() {
  b();
}

function b() {
  c();
}

function c() {
  // Create an error without stack trace to avoid calculating the stack trace twice.
  const { stackTraceLimit } = Error;
  Error.stackTraceLimit = 0;
  const error = new Error();
  Error.stackTraceLimit = stackTraceLimit;

  // Capture the stack trace above function b
  Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
  throw error;
}

a();
prepareStackTrace(Error, CallSite[])

请参阅 https://v8.dev/docs/stack-trace-api#customizing-stack-traces

构造函数详细信息

RestError(string, string, number, WebResourceLike, HttpOperationResponse)

new RestError(message: string, code?: string, statusCode?: number, request?: WebResourceLike, response?: HttpOperationResponse)

参数

message

string

code

string

statusCode

number

request
WebResourceLike

属性详细信息

code

错误代码(如果有)。 可以是静态错误代码属性之一(REQUEST_SEND_ERROR/PARSE_ERROR),也可以是基础系统调用(E_NOENT)中的字符串代码。

code?: string

属性值

string

details

任何其他详细信息。 对于反序列化错误,可以处理响应。

details?: unknown

属性值

unknown

PARSE_ERROR

用于标识分析传入 HTTP 响应时可能出现的错误的常量字符串。 通常表示格式不正确的 HTTP 正文,例如不完整的编码 JSON 有效负载。

static PARSE_ERROR: string

属性值

string

request

传出请求。

request?: WebResourceLike

属性值

REQUEST_SEND_ERROR

一个常量字符串,用于标识发出 HTTP 请求时可能出现的错误,该请求指示传输层出现问题(例如无法通过 DNS 解析 URL 的主机名)。

static REQUEST_SEND_ERROR: string

属性值

string

response

传入响应。

response?: HttpOperationResponse

属性值

statusCode

如果返回了响应的 HTTP 状态代码。

statusCode?: number

属性值

number

继承属性详细信息

message

message: string

属性值

string

继承自 Error.message

name

name: string

属性值

string

继承自 Error.name 的

stack

stack?: string

属性值

string

继承自 Error.stack

stackTraceLimit

Error.stackTraceLimit 属性指定堆栈跟踪收集的堆栈帧数(无论是由 new Error().stack 还是 Error.captureStackTrace(obj)生成)。

默认值为 10 but can be set to any valid JavaScript number. 更改将影响在更改值 捕获的任何堆栈跟踪。

如果设置为非数字值或设置为负数,则堆栈跟踪将不会捕获任何帧。

static stackTraceLimit: number

属性值

number

继承自 Error.stackTraceLimit

继承的方法详细信息

captureStackTrace(object, Function)

在 上创建一个 .stack 属性,该属性在访问时返回一个字符串,该字符串 targetObject表示调用的代码 Error.captureStackTrace() 中的位置。

const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack;  // Similar to `new Error().stack`

跟踪的第一行将以 为 ${myObject.name}: ${myObject.message}前缀。

optional constructorOpt 参数接受一个函数。 如果给定,则 上面的 constructorOpt所有帧 ,包括 constructorOpt,将从生成的堆栈跟踪中省略。

constructorOpt 参数可用于向用户隐藏错误生成的实现详细信息。 例如:

function a() {
  b();
}

function b() {
  c();
}

function c() {
  // Create an error without stack trace to avoid calculating the stack trace twice.
  const { stackTraceLimit } = Error;
  Error.stackTraceLimit = 0;
  const error = new Error();
  Error.stackTraceLimit = stackTraceLimit;

  // Capture the stack trace above function b
  Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
  throw error;
}

a();
static function captureStackTrace(targetObject: object, constructorOpt?: Function)

参数

targetObject

object

constructorOpt

Function

继承自 Error.captureStackTrace

prepareStackTrace(Error, CallSite[])

请参阅 https://v8.dev/docs/stack-trace-api#customizing-stack-traces

static function prepareStackTrace(err: Error, stackTraces: CallSite[]): any

参数

err

Error

stackTraces

CallSite[]

返回

any

继承自 Error.prepareStackTrace