Queries-BibliothekUS-Wettervorhersagedaten für mehrere Standorte abrufen
US-Wettervorhersagedaten für mehrere Standorte abrufen
Diese query verbindet sich mit der API des US National Weather Service und ruft die Wettervorhersagedaten für mehrere Standorte mit den angegebenen Koordinaten ab (über die Variable $coordinatesList, die eine Liste von JSON-Objekten mit den Einträgen lat und long ist).
query GenerateLocationURLs(
# List of JSON objects with entries `lat` and `long`
# eg: [ { "lat": 39.7456, "long": -97.0892 }, { "lat": 34.7456, "long": -77.0892 } ]
$coordinatesList: [JSONObject!]!
) {
coordinatesList: _echo(value: $coordinatesList)
@underEachArrayItem(
passValueOnwardsAs: "coordinates"
affectDirectivesUnderPos: [1, 2, 3, 4]
)
@applyField(
name: "_objectProperty",
arguments: {
by: { key: "lat" }
object: $coordinates
},
passOnwardsAs: "lat"
)
@applyField(
name: "_objectProperty",
arguments: {
by: { key: "long" }
object: $coordinates
},
passOnwardsAs: "long"
)
@applyField(
name: "_sprintf",
arguments: {
string: "https://api.weather.gov/points/%s,%s",
values: [$lat, $long]
}
passOnwardsAs: "locationURL"
)
@applyField(
name: "_echo",
arguments: {
value: {
url: $locationURL
}
}
setResultInResponse: true
)
@export(as: "coordinatesListInput")
}
query FetchUSWeatherDataForLocations
@depends(on: "GenerateLocationURLs")
{
_sendJSONObjectItemHTTPRequests(inputs: $coordinatesListInput)
}