- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-10-2022 12:15 AM
var StringUtil = new GlideStringUtil();
var attachments = new GlideSysAttachment();
var gr = new GlideRecord('sys_attachment');
gr.addEncodedQuery('sys_id=9ac0009e1b189150d72ba79ce54bcb42');
gr.query();
var message = new sn_ws.RESTMessageV2('AIP 연동', 'File Upload');
while(gr.next()){
var binData = attachments.getBytes(gr);
var encData = StringUtil.base64Encode(binData);
message.setRequestHeader("Content-Type", "multipart/form-data; boundary=---------------------------8d8190a4594aa82");
//r.setRequestHeader("Content-Disposition", "form-data");
var body = "-----------------------------8d8190a4594aa82\r\n";
body += "Content-Disposition:form-data;";
body += "name='file1'\r\n";
body += 'filename="'+gr.file_name+'"\r\n';
body += 'Content-Type:'+gr.content_type+'\r\n';
body += encData;
body += "\r\n-----------------------------8d8190a4594aa82--\r\n";
message.setRequestBody(body);
}
gs.print('reqHeaders :' + JSON.stringify(message.getRequestHeaders()));
gs.print('reqBody : ' + JSON.stringify(message.getBody())) ;
var response = message.execute();
var responseBody = response.getBody();
var httpStatus = response.getStatusCode();
gs.print(httpStatus);
gs.print(JSON.stringify(responseBody));
Solved! Go to Solution.
- Labels:
-
Integrations
-
Scripting and Coding
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-10-2022 12:24 AM
Hi,
I have updated your code.
Ideally you should be keeping the lines outside while
var StringUtil = new GlideStringUtil();
var attachments = new GlideSysAttachment();
var gr = new GlideRecord('sys_attachment');
gr.addEncodedQuery('sys_id=9ac0009e1b189150d72ba79ce54bcb42');
gr.query();
var message = new sn_ws.RESTMessageV2('AIP 연동', 'File Upload');
var body = "-----------------------------8d8190a4594aa82\r\n";
while(gr.next()){
var binData = attachments.getBytes(gr);
var encData = StringUtil.base64Encode(binData);
body += "Content-Disposition:form-data;";
body += "name='file1'\r\n";
body += 'filename="'+gr.file_name+'"\r\n';
body += 'Content-Type:'+gr.content_type+'\r\n';
body += encData;
body += "\r\n-----------------------------8d8190a4594aa82--\r\n";
}
message.setRequestHeader("Content-Type", "multipart/form-data; boundary=---------------------------8d8190a4594aa82");
message.setRequestBody(body);
gs.print('reqHeaders :' + JSON.stringify(message.getRequestHeaders()));
gs.print('reqBody : ' + message.getRequestBody()) ;
var response = message.execute();
var responseBody = response.getBody();
var httpStatus = response.getStatusCode();
gs.print(httpStatus);
gs.print(JSON.stringify(responseBody));
Regards
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-10-2022 12:24 AM
Hi,
I have updated your code.
Ideally you should be keeping the lines outside while
var StringUtil = new GlideStringUtil();
var attachments = new GlideSysAttachment();
var gr = new GlideRecord('sys_attachment');
gr.addEncodedQuery('sys_id=9ac0009e1b189150d72ba79ce54bcb42');
gr.query();
var message = new sn_ws.RESTMessageV2('AIP 연동', 'File Upload');
var body = "-----------------------------8d8190a4594aa82\r\n";
while(gr.next()){
var binData = attachments.getBytes(gr);
var encData = StringUtil.base64Encode(binData);
body += "Content-Disposition:form-data;";
body += "name='file1'\r\n";
body += 'filename="'+gr.file_name+'"\r\n';
body += 'Content-Type:'+gr.content_type+'\r\n';
body += encData;
body += "\r\n-----------------------------8d8190a4594aa82--\r\n";
}
message.setRequestHeader("Content-Type", "multipart/form-data; boundary=---------------------------8d8190a4594aa82");
message.setRequestBody(body);
gs.print('reqHeaders :' + JSON.stringify(message.getRequestHeaders()));
gs.print('reqBody : ' + message.getRequestBody()) ;
var response = message.execute();
var responseBody = response.getBody();
var httpStatus = response.getStatusCode();
gs.print(httpStatus);
gs.print(JSON.stringify(responseBody));
Regards
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-10-2022 12:56 AM
Thanks. Ankur
Regards suhyeon