Runtime Domain - DevTools Protocol Version 0.2 (EdgeHTML)
Runtime domain exposes JavaScript runtime by means of remote evaluation and mirror objects. Evaluation results are returned as mirror object that expose object type, string representation and unique identifier that can be used for further object reference. Original objects are maintained in memory unless they are either explicitly released.
Methods
enable
Enables reporting of the executionContextCreated
, executionContextDestroyed
, and executionContextsCleared
events. When the reporting gets enabled the executionContextCreated
event will be sent immediately for each existing execution context.
disable
Disables reporting of the executionContextCreated
, executionContextDestroyed
, and executionContextsCleared
events.
evaluate
Evaluates expression on global object.
Parameters | Type | Details |
---|---|---|
expression | string |
Expression to evaluate. |
includeCommandLineAPI (optional) | boolean |
Determines whether Command Line API should be available during the evaluation. |
objectGroup (optional) | string |
Symbolic group name that can be used to release multiple objects. |
silent (optional) | boolean |
In silent mode exceptions thrown during evaluation are not reported and do not pause execution. Overrides setPauseOnException state. |
contextId (optional) | ExecutionContextId | Specifies in which execution context to perform evaluation. If the parameter is omitted the evaluation will be performed in the context of the inspected page. |
returnByValue (optional) | boolean |
Whether the result is expected to be a JSON object that should be sent by value. |
awaitPromise (optional) | boolean |
Whether execution should await for resulting value and return once awaited promise is resolved. |
Returns | Type | Details |
---|---|---|
result | RemoteObject | Evaluation result. |
callFunctionOn
Calls function with given declaration on the given object. Object group of the result is inherited from the target object.
Parameters | Type | Details |
---|---|---|
functionDeclaration | string |
Declaration of the function to call. |
objectId (optional) | RemoteObjectId | Identifier of the object to call function on. Either objectId or executionContextId should be specified. objectId must be from the Runtime.evaluate() function. |
arguments (optional) | CallArgument[] | Call arguments. All call arguments must belong to the same JavaScript world as the target object. |
boolean (optional) | boolean |
In silent mode exceptions thrown during evaluation are not reported and do not pause execution. Overrides setPauseOnException state. |
returnByValue (optional) | boolean |
Whether the result is expected to be a JSON object which should be sent by value. |
awaitPromise (optional) | boolean |
Whether execution should await for resulting value and return once awaited promise is resolved. |
executionContextId (optional) | ExecutionContextId | Specifies execution context which global object will be used to call function on. Either |
executionContextId or objectId should be specified |
||
objectGroup (optional) | string |
Symbolic group name that can be used to release multiple objects. If objectGroup is not specified and objectId is, objectGroup will be inherited from object. |
Returns | Type | Details |
---|---|---|
result | RemoteObject | Call result. |
awaitPromise
Add handler to promise with given promise object id.
Parameters | Type | Details |
---|---|---|
promiseObjectId | RemoteObjectId | Identifier of the promise. |
returnByValue (optional) | boolean | Whether the result is expected to be a JSON object that should be sent by value. |
Returns | Type | Details |
---|---|---|
result | RemoteObject | Promise result. Will contain rejected value if promise was rejected. |
getProperties
Returns properties of a given object. Object group of the result is inherited from the target object.
Parameters | Type | Details |
---|---|---|
objectId | RemoteObjectId | Identifier of the object to return properties for. objectId must be from the Debugger.evaluateOnCallFrame() function. |
ownProperties (optional) | boolean |
If true , returns properties belonging only to the element itself, not to its prototype chain. |
accessorPropertiesOnly (optional) | boolean |
Experimental. If true , returns accessor properties (with getter/setter) only; internal properties are not returned either. |
Returns | Type | Details |
---|---|---|
result | PropertyDescriptor[] | Object properties. |
globalLexicalScopeNames
Returns all let, const, and class variables from the console global scope.
Returns | Type | Details |
---|---|---|
names | string[] |
releaseObject
Releases remote object with given ID.
Parameters | Type | Details |
---|---|---|
objectId | RemoteObjectId | Identifier of the object to release. |
releaseObjectGroup
Releases all remote objects that belong to a given group.
Parameters | Type | Details |
---|---|---|
objectGroup | string |
Symbolic object group name. |
discardConsoleEntries
Discards collected exceptions and console API calls.
Events
executionContextCreated
Issued when new execution context is created.
Parameters | Type | Details |
---|---|---|
context | ExecutionContextDescription | A newly created execution context. |
executionContextDestroyed
Issued when execution context is destroyed.
Parameters | Type | Details |
---|---|---|
executionContextId | ExecutionContextId | ID of the destroyed context. |
executionContextsCleared
Issued when all executionContexts were cleared in browser.
exceptionThrown
Issued when exception was thrown and unhandled.
Parameters | Type | Details |
---|---|---|
timestamp | Timestamp | Timestamp of the exception. |
exceptionDetails | ExceptionDetails |
consoleAPICalled
Parameters | Type | Details |
---|---|---|
type | string |
Type of the call. Allowed values: log , info , warning , error , debug , assert , table , trace , dir , dirxml , clear , select , count , countReset , timeEnd , timeStamp , startGroup , startGroupCollapsed , and endGroup |
args | [RemoteObject[]](#remoteobject | Call arguments. |
executionContextId | ExecutionContextId | Identifier of the context where console call was made. |
timestamp (optional) | Timestamp | Call timestamp. |
stackTrace (optional) | StackTrace | Stack trace captured if available. |
Types
ScriptId string
Unique script identifier.
RemoteObjectId string
Unique object identifier.
UnserializableValue string
Primitive value which cannot be JSON-stringified.
Allowed Values
Infinity
, NaN
, -Infinity
, -0
RemoteObject object
Mirror object referencing original JavaScript object.
Properties | Type | Details |
---|---|---|
type | string |
Object type. Allowed values: object , function , undefined , string , number , boolean , and symbol |
subtype (optional) | string |
Object subtype hint. Specified for object type values only. Allowed values: null , error , promise , and node |
className (optional) | string |
Object class (constructor) name. Specified for object type values only. |
value (optional) | any |
Remote object value in case of primitive values or JSON values (if it was requested). |
unserializableValue (optional) | UnserializableValue | Primitive value which can not be JSON-stringified does not have value , but gets this property. |
description (optional) | string |
String representation of the object. |
objectId (optional) | RemoteObjectId | Unique object identifier (for non-primitive values). |
msDebuggerPropertyId (optional) | string |
Experimental. Microsoft: The associated debugger property ID for this object. |
PropertyDescriptor object
Object property descriptor.
Properties | Type | Details |
---|---|---|
name | string |
Property name or symbol description. |
value (optional) | RemoteObject | The value associated with the property. |
writable (optional) | boolean |
True if the value associated with the property may be changed (data descriptors only). |
get (optional) | RemoteObject | A function which serves as a getter for the property, or undefined if there is no getter (accessor descriptors only). |
set (optional) | RemoteObject | A function which serves as a setter for the property, or undefined if there is no setter (accessor descriptors only). |
configurable | boolean |
True if the type of this property descriptor may be changed and if the property may be deleted from the corresponding object. |
enumerable | boolean |
True if this property shows up during enumeration of the properties on the corresponding object. |
wasThrown (optional) | boolean |
True if the result was thrown during the evaluation. |
isOwn (optional) | boolean |
True if the property is owned for the object. |
msReturnValue (optional) | boolean |
Experimental. Microsoft: True if the property is a return value. |
symbol (optional) | RemoteObject | Property symbol object, if the property is of the symbol type. |
CallArgument object
Represents function call argument. Either remote object ID objectId
, primitive value
, unserializable primitive value, or neither of (for undefined) them should be specified.
Properties | Type | Details |
---|---|---|
value (optional) | any |
Primitive value or serializable javascript object. |
unserializableValue (optional) | UnserializableValue | Primitive value which can not be JSON-stringified. |
objectId (optional) | RemoteObjectId] | Remote object handle. |
ExecutionContextId integer
ID of an execution context.
ExecutionContextDescription object
Description of an isolated world.
Properties | Type | Details |
---|---|---|
id | ExecutionContextId | Unique ID of the execution context. It can be used to specify in which execution context |
script evaluation should be performed. | ||
origin | string |
Execution context origin. |
name | string |
Human readable name describing given context. |
ExceptionDetails object
Detailed information about exception (or error) that was thrown during script compilation or execution.
Properties | Type | Details |
---|---|---|
exceptionId | integer |
Exception ID. |
text | string |
Exception text, which should be used together with exception object when available. |
lineNumber | integer |
Line number of the exception location (0-based). |
columnNumber | integer |
Column number of the exception location (0-based). |
scriptId (optional) | ScriptId | Script ID of the exception location. |
url (optional) | string |
URL of the exception location, to be used when the script was not reported. |
stackTrace (optional) | StackTrace | JavaScript stack trace if available. |
exception (optional) | RemoteObject | Exception object if available. |
executionContextId (optional) | ExecutionContextId | Identifier of the context where exception happened. |
Timestamp integer
Number of milliseconds since epoch.
CallFrame object
Stack entry for runtime errors and assertions.
Properties | Type | Details |
---|---|---|
functionName | string |
JavaScript function name. |
scriptId | ScriptId | JavaScript script id. ScriptId will be empty if debugger is not enabled. |
url | string |
JavaScript script name or url. |
lineNumber | integer |
JavaScript script line number (0-based). |
columnNumber | integer | JavaScript script column number (0-based). |
StackTrace object
Call frames for assertions or error messages.
Properties | Type | Details |
---|---|---|
description (optional) | string |
String label of this stack trace. For async traces this may be a name of the function that initiated the async call. |
callFrames | CallFrame[] | JavaScript function name. |
parent (optional) | StackTrace | Asynchronous JavaScript stack trace that preceded this stack, if available. |