Weathervenue เป็นเว็บไซต์สภาพอากาศที่ใช้ Google Maps และ OpenWeatherMap Data เพื่อให้ผู้คนค้นหาสถานที่ที่ดีที่สุดในการเยี่ยมชมใน Entourage ของพวกเขา สำหรับวันหยุดฤดูหนาวที่อบอุ่นหรือการหลบหนีฤดูร้อนที่เย็นสบาย
มันเป็นแอป NodeJS & Express ที่มีการพึ่งพาอื่น ๆ (Axios, Redis, ใกล้เคียงเมือง, OpenWeather-APIS ... )
เมื่อนำไปใช้หลังจากการวิจัยควรเป็นเช่น:



เรียกใช้เซิร์ฟเวอร์ Redis บนพอร์ตเริ่มต้นกรอกข้อมูลตัวแปร. ENV:
// root folder
NODE_ENV = localhost
GOOGLE_MAPS_API_KEY =
OPENWEATHERMAP_API_KEY = // client
GOOGLE_MAPS_API_KEY =
DEFAULT_LAT = 48.86
DEFAULT_LNG = 2.34
CENTER_LOCATION = parisทั้งในโฟลเดอร์รูทและโฟลเดอร์ไคลเอนต์ภายใน
OpenWeatherMap ไม่ได้ฟรีอีกต่อไปหากคุณไม่สามารถรับกุญแจในการเรียกใช้การทดสอบของคุณได้โปรดละเว้น OPENWEATHERMAP_API_KEY แต่ใช้ตัวแปรปลอมที่นี่: https://github.com/bacloud22/weathervenue/blob/main/libs/consts/fakeonecallapyresponse.js.js.js.js.js.
และเปลี่ยนฟังก์ชั่น fetchWeather ดังนี้
import { fakeApiResponse } from '../consts/fakeOneCallApiResponse.js' ;
async function fetchWeather ( city , language ) {
return new Promise ( async ( resolve , reject ) => {
// const APIUrlWeather = `https://api.openweathermap.org/data/3.0/onecall?lat=${city.latitude}&lon=${city.longitude}&lang=${language}&exclude=hourly,minutely&units=metric&appid=${OPENWEATHERMAP_API_KEY}`
// const body0 = await axios.get(APIUrlWeather)
// const data0 = await body0.data
// const APIUrlPollution = `https://api.openweathermap.org/data/2.5/air_pollution?lat=${city.latitude}&lon=${city.longitude}&appid=${OPENWEATHERMAP_API_KEY}`
// const body1 = await axios.get(APIUrlPollution)
// const data1 = await body1.data
// resolve({ weather: data0, pollution: data1 })
resolve ( { weather : fakeApiResponse } )
} )
}อีกด้วย
const cities = [ nearestCities ( query , 10 ) [ 0 ] ] // nearestCities(query, 10);โปรดดูปัญหาที่เปิดกว้างสำหรับปัญหาเฉพาะและอย่าลังเลที่จะเปิดปัญหาใหม่ใด ๆ (เช่นรหัสที่ดีกว่าความสามารถในการอ่านโมดูลและแนวปฏิบัติที่ดีที่สุดประสิทธิภาพ UI ที่ดีขึ้นหรือแม้กระทั่งการปรับปรุงฟังก์ชั่น ... )
หากคุณมีส่วนร่วมโปรดพิจารณาว่าฉันสามารถรวมและเผยแพร่รุ่นใหม่ภายใต้ช่องทางหนึ่งหรืออื่น จะฟรี 100% แม้ว่าฉันสามารถเพิ่มโฆษณาเพื่อสร้างค่าใช้จ่ายกาแฟได้ :)
หากคุณต้องการรักษาโครงการไว้กับฉัน คุณสามารถถามได้ตลอดเวลา
โปรดให้มันยุติธรรมหากคุณต้องการปรับใช้ทุกที่ ขออนุญาต
การเข้ารหัสหวาน!
มิกซ์