DevInspector class

A developer tool for inspecting raw Smartschool HTTP traffic. Use this to reverse-engineer new endpoints and page structures.

Example:

final inspector = await DevInspector.create(credentials);
final result = await inspector.getPage('/?module=Messages');
inspector.prettyPrint(result);
await inspector.saveToFile(result, 'messages_page.html');

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

dumpCookies() → void
Dumps all cookies currently held by the session.
getAuthenticatedUser() Future<Map<String, dynamic>>
Returns the authenticated Smartschool user payload.
getJson(String path) Future<InspectionResult>
Fetches a URL and tries to parse the response as JSON.
getPage(String path) Future<InspectionResult>
Fetches a full Smartschool page (GET).
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
postRequest(String path, {required Map<String, String> formData}) Future<InspectionResult>
Sends a POST request and inspects the response.
prettyPrint(InspectionResult result) → void
Pretty-prints an InspectionResult to stdout.
request(String method, String path, {DevRequestOptions options = const DevRequestOptions()}) Future<InspectionResult>
Executes a low-level request for reverse-engineering purposes.
saveToFile(InspectionResult result, String filename) Future<void>
Saves the body of an InspectionResult to a local file.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

create(Credentials credentials) Future<DevInspector>
parseQueryString(String rawQuery) Map<String, String>