Supply Custom Headers for JSON Database
Our sample projects and report templates can help you learn the basics of working with our products.When a JSON data source is served by a protected backend, you can attach custom HTTP headers to each data request.
Preparing the data. Read or create the data source, register it in the report dictionary, synchronize the schema, and render with the supplied records.
The
In the screenshot below you can see the result of the sample code:

Preparing the data. Read or create the data source, register it in the report dictionary, synchronize the schema, and render with the supplied records.
@Component({
selector: "supply-custom-headers-for-json-database",
imports: [Viewer],
template: `<sti-viewer [report]="report" [options]="viewerOptions"></sti-viewer>`
})
export class SupplyCustomHeadersForJsonDatabase {
report: Stimulsoft.Report.StiReport;
viewerOptions: Stimulsoft.Viewer.StiViewerOptions;
constructor() {
this.report = new Stimulsoft.Report.StiReport();
this.report.loadFile("Reports/MasterDetail.mrt");
this.report.onBeginProcessData = function (args) {
if (args.database === "JSON" && args.command === "GetData") {
// Add custom header to pass through backend server protection
args.headers.push({ key: "X-Auth-Token", value: "*YOUR TOKEN*" });
}
};
this.viewerOptions = new Stimulsoft.Viewer.StiViewerOptions();
this.viewerOptions.appearance.fullScreenMode = true;
}
}The
onBeginProcessData event fires before every data request; pushing an entry onto args.headers (here an X-Auth-Token) lets the call pass through server-side protection.In the screenshot below you can see the result of the sample code:
