get_soils_raster(...) 中的简单错误:http 错误 400
simpleError in get_soils_raster(...): http error 400
我正在尝试使用嵌套循环获取多个位置的多个属性。代码在周末运行良好,但今天出现错误。
我已经尝试清除我的 DNS 缓存、clearing/restarting R 会话和更新包。已尝试对函数进行故障排除,但找不到 get_soils_raster 函数。
MRE:这是我用来收集数据的循环的一部分。
LATITUDE = -28.77837
LONGITUDE = 114.6572
soil_attributes_available <- slga_attribute_info %>%
filter(WA == TRUE) %>%
select(Code) %>%
unlist() %>%
unname()
soil_composition_matrix <- lapply(soil_attributes_available, list)
SOIL_DEPTH <- 1 # 0-5cm
BUFFER_AROUND_POINT <- 3 # ~270m radius
for (code in 1:length(soil_attributes_available)) {
result <- tryCatch(
{unname(
unlist(
get_soils_point(product = 'WA',
attribute = soil_attributes_available[code],
component = 'VAL',
depth = SOIL_DEPTH,
poi = c(LONGITUDE, LATITUDE),
buff = BUFFER_AROUND_POINT,
buff_shp = 'circle',
stat = 'mean')[1]
)
)
},
error = function(e){print(e)}
)
print(result)
}
当我在周末 运行 它时,我会得到每次迭代的数据点,但现在我收到错误 运行domly:
<simpleError in get_soils_raster(product, attribute, component, depth, aoi, skip_val = TRUE): http error 400.>
有什么建议吗,@obrl-soils?
get_soils_raster
是一个 internal-only 函数 - 您可以使用 :::
而不是 ::
查看它,或者访问 github 存储库。
您遇到的问题似乎与底层服务本身有关,而不是包装代码 - 您可以看出,因为相同的请求有时有效,有时无效,所以问题不是格式错误的请求,因为错误代码可能会提示。我可以复制不一致的行为,我会跟进服务提供商。我注意到过去 24 小时内澳大利亚发生了一些重大的互联网中断,所以这可能会自行解决。
与此同时,您可能希望尝试 http://www.asris.csiro.au/ASRISApi#!/SLGA32Services/SLGA_DrillSLGA 上可用的替代 API 端点。我还没有将它内置到 slga
中 - 我仍在使用 WCS 服务进行我的点查询。
我正在尝试使用嵌套循环获取多个位置的多个属性。代码在周末运行良好,但今天出现错误。
我已经尝试清除我的 DNS 缓存、clearing/restarting R 会话和更新包。已尝试对函数进行故障排除,但找不到 get_soils_raster 函数。
MRE:这是我用来收集数据的循环的一部分。
LATITUDE = -28.77837
LONGITUDE = 114.6572
soil_attributes_available <- slga_attribute_info %>%
filter(WA == TRUE) %>%
select(Code) %>%
unlist() %>%
unname()
soil_composition_matrix <- lapply(soil_attributes_available, list)
SOIL_DEPTH <- 1 # 0-5cm
BUFFER_AROUND_POINT <- 3 # ~270m radius
for (code in 1:length(soil_attributes_available)) {
result <- tryCatch(
{unname(
unlist(
get_soils_point(product = 'WA',
attribute = soil_attributes_available[code],
component = 'VAL',
depth = SOIL_DEPTH,
poi = c(LONGITUDE, LATITUDE),
buff = BUFFER_AROUND_POINT,
buff_shp = 'circle',
stat = 'mean')[1]
)
)
},
error = function(e){print(e)}
)
print(result)
}
当我在周末 运行 它时,我会得到每次迭代的数据点,但现在我收到错误 运行domly:
<simpleError in get_soils_raster(product, attribute, component, depth, aoi, skip_val = TRUE): http error 400.>
有什么建议吗,@obrl-soils?
get_soils_raster
是一个 internal-only 函数 - 您可以使用 :::
而不是 ::
查看它,或者访问 github 存储库。
您遇到的问题似乎与底层服务本身有关,而不是包装代码 - 您可以看出,因为相同的请求有时有效,有时无效,所以问题不是格式错误的请求,因为错误代码可能会提示。我可以复制不一致的行为,我会跟进服务提供商。我注意到过去 24 小时内澳大利亚发生了一些重大的互联网中断,所以这可能会自行解决。
与此同时,您可能希望尝试 http://www.asris.csiro.au/ASRISApi#!/SLGA32Services/SLGA_DrillSLGA 上可用的替代 API 端点。我还没有将它内置到 slga
中 - 我仍在使用 WCS 服务进行我的点查询。