UNPKG

actionhero

Version:

The reusable, scalable, and quick node.js API server for stateless and stateful applications

63 lines (56 loc) 2.27 kB
// Note that to use the websocket server, you also need the web server enabled import { ActionheroConfigInterface } from ".."; const namespace = "websocket"; declare module ".." { export interface ActionheroConfigInterface { [namespace]: ReturnType<(typeof DEFAULT)[typeof namespace]>; } } export const DEFAULT = { [namespace]: (config: ActionheroConfigInterface) => { return { enabled: true, // you can pass a FQDN (like https://company.com) here or 'window.location.origin' clientUrl: "window.location.origin", // Directory to render client-side JS. // Path should start with "/" and will be built starting from api.config..general.paths.public clientJsPath: "javascript/", // the name of the client-side JS file to render. Both `.js` and `.min.js` versions will be created // do not include the file extension // set to `undefined` to not render the client-side JS on boot clientJsName: "ActionheroWebsocketClient", // should the server signal clients to not reconnect when the server is shutdown/reboot destroyClientsOnShutdown: false, // websocket Server Options: server: { // authorization: null, // pathname: '/primus', // parser: 'JSON', // transformer: 'websockets', // plugin: {}, // timeout: 35000, // origins: '*', // methods: ['GET','HEAD','PUT','POST','DELETE','OPTIONS'], // credentials: true, // maxAge: '30 days', // exposed: false, }, // websocket Client Options: client: { apiPath: "/api", // the api base endpoint on your actionhero server // the cookie name we should use for shared authentication between WS and web connections cookieKey: config.web.fingerprintOptions.cookieKey, // reconnect: {}, // timeout: 10000, // ping: 25000, // pong: 10000, // strategy: "online", // manual: false, // websockets: true, // network: true, // transport: {}, // queueSize: Infinity, }, }; }, };