Open eccegordo opened 2 years ago
TL;DR I would be hesitant to add such functionality to this addon
As most of the mirage functionality was extracted from this add-on and moved to more generalized https://github.com/miragejs/miragejs we try to keep this repo focused on glue code that would help Ember users.
Today in modern Ember app you may even not need ember-cli-mirage
and simply import miragejs
via ember-auto-import
, I would say such feature request better suit miragejs
itself.
If sounds like nock can be used to achieve such behavior but in my opinion it should be some sort of an add-on to the ember-cli-mirage
which would:
This approach overall sounds opposite of what mirage is doing: providing mock server for development and generating responses on-the-fly based on the server config.
Wonder what other maintainers think and may have other suggestions.
Thanks for the tip about nock.
Yeah you are right this is really a question for miragejs and not the addon. Although perhaps a case could be made for Ember specific behavior (e.g. functionality that works well for Ember conventions)
My main goal is I am working on an app with an established API. And looking for a way to speed up the development. The challenge is that I currently don't have much control over the API itself so doing stuff like making it JSON API compliant are not feasible. But rather than spending a lot of time manually crafting the mirage scenarios I would like to just use captured JSON within mirage (make the API work offline and locally). And extract out parts as I develop the mock server. Basically a mock server "derived" from a real API service is what I am trying to figure out.
Anyway, feel to close this issue if not appropriate to the scope of this addon.
@eccegordo are you using proxy on your local during development? You may just plug in nock
and use it instead of miragejs for capture/replay
I am using some special config in my ember app to with a HOST_URL value for the development environment and in most cases using Fetch inside my route hooks to hit the live API when working on Ember in development mode. I use the mirage passthrough. But reality is I don't have too much going on with mirage. And I am developing against the live API for the most part.
But no proxy directly, AFAICT.
Will explore the nock
library.
Feature request
Would it be possible to add a mechanism to quickly "record" API payloads to local JSON files?
In other words something like
passthrough
but with a flag to capture the API result and persist to a local log file that Mirage would understand and use if I turned passthrough mode off. Bonus points if it could dynamically build out scenario stubs that are route aware. Then end goal being where I could wire up some routes to an existing API using fetch and click around the app a bit, review the saved JSON, and take the development back offline, tweaking the "recorded" JSON as needed to make my mocks more flexible or dynamic.Extra bonus points if there was some sort of integration with Postman collections.