Coś co będzię symulowało API

Coś co będzię symulowało API
Krwawy Ork
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 105
0

witam!
Chciałbym zacząć pracować z API wiem, że są w internecie jakieś losowe cytaty czy user crudy, które używam czasem ale potrzebuję coś co by symulowało API i byłoby to w zawartości mojego pliku z folderem projektu. Myślałem o tym aby zrobic folder api/index.js i tam jakaś funkcja, która zwróci jakiś obiekt, oczywiście ustawiłbym timeout.

Macie jakiś pomysł?

KamilAdam
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Silesia/Marki
  • Postów: 5550
0
Krwawy Ork napisał(a):

byłoby to w zawartości mojego pliku z folderem projektu.

Ale po co ci to? Na co ci to? jakie problemy chcesz tym rozwiązać?

Myślałem o tym aby zrobic folder api/index.js i tam jakaś funkcja, która zwróci jakiś obiekt, oczywiście ustawiłbym timeout.

Ale wiesz że żeby mieć prawdziwe API to musisz napisać projekt backendowy czyli np ten swój index.js uruchomić na node.js?

athaylean
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 21
1

Możesz skorzystać z czegoś takiego: https://github.com/typicode/json-server

AI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 375
0

W czym piszesz, że coś takiego chcesz zrobić? W Angularze? Możesz korzystać korzystać spokojnie z HttpClienta i w interceptorze wyłapywać requesty. W React'cie jakoś pewnie też się da bawiąc z Anxiosem. We Vue nie wiem.

Ewentualnie możesz po prostu stworzyć implementację klasy co będzie skądś brała te dane (plik, hardcodowane dane w jakiejś tablicy itd) i w razie potrzeby podmienić.

obscurity
  • Rejestracja: dni
  • Ostatnio: dni
0

Są gotowe rozwiązania jak np https://www.mock-server.com/

Krwawy Ork
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 105
0

@Aisekai
Uczę się w Vue 3.

Natknąłem się na przykład takiego kodu:

Kopiuj
/**
 * Mocking client-server processing
 */
const _products = [
  { 'id': 1, 'title': 'iPad 4 Mini', 'price': 500.01, 'inventory': 2 },
  { 'id': 2, 'title': 'H&M T-Shirt White', 'price': 10.99, 'inventory': 10 },
  { 'id': 3, 'title': 'Charli XCX - Sucker CD', 'price': 19.99, 'inventory': 5 }
]

export default {
  getProducts (cb) {
    setTimeout(() => cb(_products), 100)
  },

  buyProducts (products, cb, errorCb) {
    setTimeout(() => {
      // simulate random checkout failure.
      (Math.random() > 0.5 || navigator.webdriver)
        ? cb()
        : errorCb()
    }, 100)
  }
}
AI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 375
1

Nie znam Vue, ale wygląda spoko. Teraz sobie to gdzieś do komponentu, gdzie potrzebujesz te dane wyświetlić, wrzucasz i w razie konieczności zmieniasz tylko implementację jak będziesz potrzebował zrobić prawdziwy Http request.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.