Comments (11)
@bugeats you could use xhook
, no?
from frisbee.
https://github.com/jpillora/xhook
from frisbee.
xhook looks pretty heavy weight, and I'm not entirely sure it will work in the Node environment.
from frisbee.
In v3.0.0 of Frisbee you can do DEBUG=frisbee node app.js
as we have debug integrated. Soon to be released.
from frisbee.
v3.0.0 is released with the ability to do DEBUG=frisbee node app.js
to output debug statements.
from frisbee.
Debug statements aren't the same as a logging hook, but ok.
from frisbee.
from frisbee.
logRequest
and logResponse
option
Here's a quick example, but you can see the Logging and Debugging section of the README for more insight.
const cabin = require('cabin');
const frisbee = require('frisbee');
const pino = require('pino')({
customLevels: {
log: 30
}
});
const logger = new Cabin({
// (optional: your free API key from https://cabinjs.com)
// key: 'YOUR-CABIN-API-KEY',
axe: { logger: pino }
});
const api = new Frisbee({
logRequest: (path, opts) => {
logger.info('fetch request', { path, opts });
},
logResponse: res => {
logger.info('fetch response', { res });
}
});
Try it out and let me know if it works or if you need anything further:
npm install frisbee@latest
P.S. You are correct in that xhook
does not work server-side, and I filed a GitHub issue here to track progress jpillora/xhook#103.
from frisbee.
Just an update - v3.0.2 now supports logResponse
having three arguments, path
, opts
, and response
. It looks now like this:
const api = new Frisbee({
logRequest: (path, opts) => {
logger.info('fetch request', { path, opts });
},
logResponse: (path, opts, res) => {
logger.info('fetch response', { path, opts, res });
}
});
from frisbee.
Perfect! Nice work.
from frisbee.
@bugeats note that you can use interceptors to debug requests/responses easier - see the README for more insight/examples
from frisbee.
Related Issues (20)
- Breaking changes in v3 HOT 2
- Could not find a declaration file for module Frisbee HOT 1
- How can i modify options in request interceptor? HOT 1
- Is there a way to pass `insecureHTTPParser` configuration to request? HOT 4
- certificate
- http methods not available in jest tests HOT 1
- Rewrite codebase after removing xo rules that are turned off HOT 1
- Error / stack trace whenever API returns non-ok response HOT 2
- Retrying request after refreshing JWT access token in response interceptor HOT 7
- TypeScript definiton HOT 2
- .get() method strips trailing slash when GET params are passed in body HOT 2
- Feature: Follow redirects and add cookie support out of the box HOT 1
- Feature: Support GZIP/compression out of the box
- Feature: Timeout, Retry, and Queue HOT 11
- Feature: Hooks HOT 1
- Error: unsupported BodyInit type when attempting to post data to endpoint accepting the "application/x-www-form-urlencoded" content-type HOT 6
- How download a image with Frisbee?
- api.auth API should accept a function instead of static singleton string HOT 1
- Possible race conditions
- React Native use frisbee get api not work
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from frisbee.