Ekspres sunucu, Arka Uç, API [kapalı]
Merhaba ben yeniyim.
- React.js ile üç ay önce YT'de kendi başıma başladım.
- çoğunlukla API getiriliyor
- bazı API'ler bir imza ile güvence altına alınmıştır
- API çağrılarımın React'te değil sunucuda olması gerektiğini bilmiyordum
- CORS hatası alınıyor
- ne olduğunu ve nasıl düzeltileceğini bilmiyordum.
- arka uç öğrenmeye başladı
YT'deki her video:
- JSON yer tutucusu
- SWAPI
- React ve arka uç ile video yok,
- sunucu videosundan POST imzalı istek yok.
- neredeyse pes
CORS hata çözümü:
- şimdi korselerin nasıl düzeltileceğini biliyorum:
- package.json'da ifade edilecek proxy ile,
- src'ye setupProxy.js eklemek,
- ve Express server.js'de "app.use (cors ())"
React uygulamam:
- 7/24 çalışır.
- API'den her 3 saniyede bir durumları güncellemeniz gerekir.
- sonra durum verilerini karşılaştırın. (Bu, mümkün olsa bile herkese açık olmayan bazı gizli formüller ve işlevlerdir. Ekspres server.js'de kodu gizlemek için)
- ve ilgili işlemleri yapın (yeni API çağrıları).
Soru bölümü:
- bu mümkün mü?
- web sitesinde kimse yoksa uygulama nasıl çalışıyor?
- bu, Express server.js'nin her zaman canlı olduğu anlamına gelir
- ve React UI yalnızca birisi verilerde neler olup bittiğini görmek için web sitesini açtığında canlıdır
- react-app'i express ile nasıl dağıtabilirim? bu iyi mi?
https://dev.to/nburgess/creating-a-react-app-with-react-router-and-an-express-backend-33l3
- nasıl barındırılır - nerede konuşlandırılır? Github sayfalarında mı?
- dağıtımda hızlı sunucu otomatik çalıştırmaları yapın veya barındırmada "npm start" a ihtiyacım var mı
- veya uygulamayı ilk kez açın (web sitesini açın)
- bu nasıl çalışır
- django'ya ihtiyacım var mı
ne daha iyi:
- uygulamamı diğer kullanıcılarla paylaşmaya karar verirsem:
- her birine react uygulamasının bir kopyasını vermek ve kendilerini
- veya
- evrensel bir uygulama yapın, böylece her kullanıcı oturum açabilir ve gösterge panosu ile kendi verileri ve durumlarına sahip kendi ekspres sunucusuna sahip olabilir.
- evrensel uygulama daha iyiyse bunu öğrenmek
Cevaplanan her soru için teşekkür ederiz.
Yanıtlar
Sunucu 7/24 çalışır
Bir kullanıcı web sitesinin bir sayfasına erişmek istediğinde, sunucu ona sayfanın planını (bu durumda react js oluşturma kodunuz tarafından oluşturulan html, css ve js) gönderir, işte o zaman react uygulamanız canlanır.
zaten sunucu tarafı için express'iniz var, django'ya ihtiyacınız yok.
evet, heroku ile dağıtmak iyidir. sunucu ile ilgilenecek, ancak zaten heroku'ya bir react derlemesi yüklemiyorsanız, sunucunun package.json dosyasına bir komut dosyası eklemeniz gerekecek.
"heroku-postbuild": "npm install --prefix client && npm run build --prefix client"
burada istemci, tepki kodunuzu içinde tuttuğunuz klasördür.
Halka açık olmaması gerekiyorsa, bunu bir tepki durumu olarak almamalısınız.
Evrensel bir şeyi kullanmak daha iyidir, sadece sahibinin ayrıcalıklı olduğu bir hesap sistemi oluşturun ve url'yi www.website.com/sahibininkullanıcı adı biçiminde yapın ve yapıldı, her sahip web sitesinin kendi sürümünü alır.
(youtube'da, sorularınızın çoğunu yanıtlayan, geçiş medyası tarafından hazırlanmış harika bir MERN yığını öğreticisi var)