firebase / firebase-admin-node

Firebase Admin Node.js SDK
https://firebase.google.com/docs/admin/setup
Apache License 2.0
1.62k stars 370 forks source link

[FR] Include raw HTTPS responses in errors #756

Open alexanderwallin opened 4 years ago

alexanderwallin commented 4 years ago

Is your feature request related to a problem? Please describe. I am converting APNs tokens to Firebase registration tokens ("FRTs") on-the-fly in a backend push service. Many converted FRTs fail with the error messaging/invalid-argument, with no clues of what's going on. Through some fairly time consuming debugging using the Google API Explorer I was able to get some more details on what was happening, but it's a frustrating process.

Describe the solution you'd like Provide the raw HTTPS response in the thrown FirebaseMessagingError. The python SDK has this, so I think it makes sense that the Node one would too. It would be especially helpful in cases like this where the error code doesn't make much sense.

Describe alternatives you've considered The only real option to attain more info would be to use the REST API directly, but that feels a little over the top.

Additional context There's definitely a possibility that the server or app is misconfigured somehow. Fixing the error is not the point here, though!

google-oss-bot commented 4 years ago

I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.

hiranya911 commented 4 years ago

This is definitely the long term plan. We are currently working towards implementing the same for Java. We can pick up Node.js towards the end of 2020.

alexanderwallin commented 4 years ago

I'm glad to hear it's on your radar! It's quite a while, a year to introduce a property. Do you accept PRs, or does it entail too much in-house coordinance?

hiranya911 commented 4 years ago

If you can introduce the property without any other breaking changes, we can certainly accept it. The overall error handling revamp we are planning is a large-scale breaking change. That's why it's taking time.

alexanderwallin commented 4 years ago

Alright, good to know! I'll see what I can do. Good luck with the revamp!