Scripted REST API example - streaming file attachments
On this page
Scripted REST API example - streaming file attachments
This example demonstrates how to send an image attachment to a requesting user as a binary stream.
/**
* Sample Scripted REST Resource that returns a stream of binary representing an attachment
* This sample uses ServiceNow JavaScript API GlideSysAttachmentInputStream to get an attachment as a stream then
* users WriteStream to stream the response.
*/
(function process(/*RESTAPIRequest*/ request, /*RESTAPIResponse*/ response) {
var hdrs = {},
attachment_sys_id = '1852fd52471321009db4b5b08b9a71a9';
hdrs['Content-Type'] = 'image/jpeg';
response.setStatus(200);
response.setHeaders(hdrs);
var writer = response.getStreamWriter();
var attachmentStream = new GlideSysAttachmentInputStream(attachment_sys_id);
writer.writeStream(attachmentStream);
})(request, response);
A request to this resource returns the following response.
// sample response /* HTTP/1.1 200 OK Set-Cookie: glide_session_store=SYSTEM; Expires=Fri, 30-Oct-2015 21:57:00 GMT; Path=/; HttpOnly Content-Type: image/jpeg Transfer-Encoding: chunked Date: Fri, 30 Oct 2015 21:26:59 GMT Connection: close Server: ServiceNow <binary response body excluded from this sample> */
Parent Topic:Scripted REST API examples
Keep exploring.
Find another answer, or bring this documentation into your own tools.