File tree Expand file tree Collapse file tree 1 file changed +21
-1
lines changed
stac_fastapi/core/stac_fastapi/core Expand file tree Collapse file tree 1 file changed +21
-1
lines changed Original file line number Diff line number Diff line change 11"""Item crud client."""
2+ import json
23import logging
34import re
45from datetime import datetime as datetime_type
@@ -452,8 +453,27 @@ async def get_search(
452453 if datetime :
453454 base_args ["datetime" ] = datetime
454455
456+ # As of stac-fastapi 2.5.x, the intersects GET request parameter is being sent as a list
455457 if intersects :
456- base_args ["intersects" ] = orjson .loads (unquote_plus (intersects ))
458+ intersects_dict = {"type" : None , "coordinates" : None }
459+
460+ combined_json_string = intersects [0 ]
461+
462+ # Iterate over the remaining fragments and add each with a preceding comma
463+ for fragment in intersects [1 :]:
464+ combined_json_string += "," + fragment
465+
466+ combined_json_string = combined_json_string .replace ("'" , "" )
467+ combined_json_string = "" .join (
468+ char for char in combined_json_string if char .isprintable ()
469+ )
470+
471+ try :
472+ intersects_dict = json .loads (combined_json_string )
473+ except json .JSONDecodeError as error :
474+ print ("Failed to parse JSON:" , error )
475+
476+ base_args ["intersects" ] = intersects_dict
457477
458478 if sortby :
459479 sort_param = []
You can’t perform that action at this time.
0 commit comments