BUG: improve pd.io.json_normalize
- [x] closes #57810
- [x] [Tests added and passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#writing-tests) if fixing a bug or adding a new feature
- [x] All [code checks passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#pre-commit).
- [x] Added [type annotations](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#type-hints) to new arguments/methods/functions.
- [x] Added an entry in the latest `doc/source/whatsnew/v2.2.2.rst` file if fixing a bug or adding a new feature.

@slavanorm in case you haven't seen it, your changes are making the tests fail: https://github.com/pandas-dev/pandas/actions/runs/8239141116/job/22531710877?pr=57811#step:8:53 I'm not sure about this change - the point of the `errors` argument is to ignore missing keys. Shouldn't the test case you added still create the column but with all empty data? yes it should but it creates rows only for the dictionaries with record path.
i will edit the fixture and assertion in order to get into this case of if
 This docs check is failing, and its not fixable. Wonder what should we do now  I fixed the code, wish someone reviewed it sorry i closed it by mistake, just reopened it @WillAyd could you please review the code again, it's been 2 weeks i think Thanks for the pull request, but it appears to have gone stale. If interested in continuing, please merge in the main branch, address any review comments and/or failing tests, and we can reopen. thank you too.
now the code is obsolete vs main branch but its ok.

on second thought, the code does not actually require merging to pandas library.
it got stale because of lack of interaction. 
everything was done on my side and all requests were adressed, but were not reviewed on time. 

best regards