INNER CODE UNIT · TypeScript

serializeBody

stoplightio/prism · packages/http/src/forwarder/index.ts:109

export function serializeBody(body: unknown): E.Either<Error, string | undefined> {
  if (typeof body === 'string') {
    return E.right(body);
  }

  if (body) return pipe(J.stringify(body), E.mapLeft(E.toError));

  return E.right(undefined);
}

function logForwardRequest({ logger, url, request }: { logger: Logger; url: string; request: IHttpRequest }) {
  const prefix = `${chalk.grey('> ')}`;
  logger.info(`${prefix}Forwarding "${request.method}" request to ${url}...`);
  logRequest({ logger, prefix, ...pick(request, 'body', 'headers') });
}

function forwardResponseLogger(logger: Logger) {
  return (response: Response) => {

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…