@fly/edge
Version:
Fly's TypeScript Edge
28 lines • 2.55 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.echo = void 0;
/**
* @module Backends
*/
/**
* A useful fetch-like function for debugging. Echos request information
* as a JSON response.
* @hidden
* @param req The request to echo
* @param init Request init information
*/
async function echo(req, init) {
if (typeof req === "string") {
req = new Request(req, init);
init = undefined;
}
const body = {
method: req.method,
url: req.url,
remoteAddr: req.remoteAddr,
headers: req.headers.toJSON()
};
return new Response(JSON.stringify(body, null, "\t"), { headers: { "content-type": "application/json" } });
}
exports.echo = echo;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNoby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYWNrZW5kcy9lY2hvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOztHQUVHO0FBQ0g7Ozs7OztHQU1HO0FBQ0ksS0FBSyxVQUFVLElBQUksQ0FBQyxHQUFnQixFQUFFLElBQWtCO0lBQzdELElBQUcsT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFDO1FBQ3pCLEdBQUcsR0FBRyxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDNUIsSUFBSSxHQUFHLFNBQVMsQ0FBQTtLQUNqQjtJQUVELE1BQU0sSUFBSSxHQUFHO1FBQ1gsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNO1FBQ2xCLEdBQUcsRUFBRSxHQUFHLENBQUMsR0FBRztRQUNaLFVBQVUsRUFBRyxHQUFXLENBQUMsVUFBVTtRQUNuQyxPQUFPLEVBQUcsR0FBRyxDQUFDLE9BQWUsQ0FBQyxNQUFNLEVBQUU7S0FDdkMsQ0FBQTtJQUVELE9BQU8sSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUMsY0FBYyxFQUFFLGtCQUFrQixFQUFDLEVBQUMsQ0FBQyxDQUFDO0FBQzFHLENBQUM7QUFkRCxvQkFjQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBCYWNrZW5kc1xuICovXG4vKipcbiAqIEEgdXNlZnVsIGZldGNoLWxpa2UgZnVuY3Rpb24gZm9yIGRlYnVnZ2luZy4gRWNob3MgcmVxdWVzdCBpbmZvcm1hdGlvblxuICogYXMgYSBKU09OIHJlc3BvbnNlLlxuICogQGhpZGRlblxuICogQHBhcmFtIHJlcSBUaGUgcmVxdWVzdCB0byBlY2hvXG4gKiBAcGFyYW0gaW5pdCBSZXF1ZXN0IGluaXQgaW5mb3JtYXRpb25cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGVjaG8ocmVxOiBSZXF1ZXN0SW5mbywgaW5pdD86IFJlcXVlc3RJbml0KXtcbiAgaWYodHlwZW9mIHJlcSA9PT0gXCJzdHJpbmdcIil7XG4gICAgcmVxID0gbmV3IFJlcXVlc3QocmVxLCBpbml0KVxuICAgIGluaXQgPSB1bmRlZmluZWRcbiAgfVxuXG4gIGNvbnN0IGJvZHkgPSB7XG4gICAgbWV0aG9kOiByZXEubWV0aG9kLFxuICAgIHVybDogcmVxLnVybCxcbiAgICByZW1vdGVBZGRyOiAocmVxIGFzIGFueSkucmVtb3RlQWRkcixcbiAgICBoZWFkZXJzOiAocmVxLmhlYWRlcnMgYXMgYW55KS50b0pTT04oKVxuICB9XG5cbiAgcmV0dXJuIG5ldyBSZXNwb25zZShKU09OLnN0cmluZ2lmeShib2R5LCBudWxsLCBcIlxcdFwiKSwgeyBoZWFkZXJzOiB7XCJjb250ZW50LXR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCJ9fSk7XG59Il19