@domoinc/ryuu-proxy
Version:
a middleware that provides a proxy for local domo app development
29 lines (28 loc) • 1.08 kB
TypeScript
/// <reference types="node" />
import Domo = require("ryuu-client");
import * as axios from "axios";
import { IncomingMessage, IncomingHttpHeaders } from "http";
import { ProxyOptions, OauthToken } from "../models";
import { Manifest } from "ryuu-client/lib/models";
export default class Transport {
private manifest;
private clientPromise;
private domainPromise;
private proxyId;
private oauthTokenPromise;
constructor({ manifest }: ProxyOptions);
request: (options: axios.AxiosRequestConfig) => any;
getEnv(instance: string): string;
isDomoRequest(url: string): boolean;
isMultiPartRequest(headers: IncomingHttpHeaders): boolean;
getManifest(): Manifest;
getDomainPromise(): Promise<any>;
getLastLogin(): Promise<Domo>;
getScopedOauthTokens(): Promise<OauthToken | undefined>;
build(req: IncomingMessage): Promise<axios.AxiosRequestConfig>;
buildBasic(req: IncomingMessage): Promise<axios.AxiosRequestConfig>;
private prepareHeaders;
private prepareCookies;
private parseBody;
private verifyLogin;
}