mirror of
https://github.com/sasjs/adapter.git
synced 2026-01-09 05:20:05 +00:00
fix(job-execution): fixed webout for SASJS server type
This commit is contained in:
@@ -1,6 +1,14 @@
|
||||
import { RequestClient } from './RequestClient'
|
||||
import { AxiosResponse } from 'axios'
|
||||
import { SASJS_LOGS_SEPARATOR, getValidJson } from '../utils'
|
||||
import { SASJS_LOGS_SEPARATOR } from '../utils'
|
||||
|
||||
interface SasjsParsedResponse<T> {
|
||||
result: T
|
||||
log: string
|
||||
etag: string
|
||||
status: number
|
||||
printOutput?: string
|
||||
}
|
||||
|
||||
/**
|
||||
* Specific request client for SASJS.
|
||||
@@ -27,7 +35,7 @@ export class SasjsRequestClient extends RequestClient {
|
||||
protected parseResponse<T>(response: AxiosResponse<any>) {
|
||||
const etag = response?.headers ? response.headers['etag'] : ''
|
||||
let parsedResponse = {}
|
||||
let log
|
||||
let webout, log, printOutput
|
||||
|
||||
try {
|
||||
if (typeof response.data === 'string') {
|
||||
@@ -38,17 +46,26 @@ export class SasjsRequestClient extends RequestClient {
|
||||
} catch {
|
||||
if (response.data.includes(SASJS_LOGS_SEPARATOR)) {
|
||||
const splittedResponse = response.data.split(SASJS_LOGS_SEPARATOR)
|
||||
|
||||
webout = splittedResponse[0]
|
||||
if (webout) parsedResponse = webout
|
||||
|
||||
log = splittedResponse[1]
|
||||
if (splittedResponse[0].trim())
|
||||
parsedResponse = getValidJson(splittedResponse[0])
|
||||
} else parsedResponse = response.data
|
||||
printOutput = splittedResponse[2]
|
||||
} else {
|
||||
parsedResponse = response.data
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
const returnResult: SasjsParsedResponse<T> = {
|
||||
result: parsedResponse as T,
|
||||
log,
|
||||
etag,
|
||||
status: response.status
|
||||
}
|
||||
|
||||
if (printOutput) returnResult.printOutput = printOutput
|
||||
|
||||
return returnResult
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user