로컬 서버에서 실행중인 Overpass API에 대한 쿼리를 수행하고 있습니다.C# (RestSharp)에서 C# (urllib)이 아닌 Overpass API에서 400
/api/interpreter?[out:json];way(around:1000,-33.933,18.4347)[amenity][name];(._;>;);out;
그리고 내가 파이썬을 사용하여 동일한 호출을 수행합니다 (400)
을 반환 그리고 내가 "편의 시설"을 가지고 있고 (즉, 모든 방법을 기대 반환 : 전 C#에서 다음 쿼리를하고 있어요 "이름"태그, 모든 관련 노드 포함).
C# (RestSharp 라이브러리 사용)에서 호출을 수행하면 API가 ">"대신 ecape 문자 "% 3E"을 볼 수 있지만 ">"는 ">"를 볼 수 있습니다. 호출은 파이썬에서 수행됩니다. 여기에 아파치 로그에 기록 된 두 통화는 다음과 같습니다
"GET /api/interpreter?[out:json];way(around:1000,-33.933,18.4347)[amenity][name];(._;>;);out; HTTP/1.1" 200 20878 "-" "Python-urllib/3.5"
"GET /api/interpreter?[out:json];way(around:1000,-33.933,18.4347)[amenity][name];(._;%3E;);out; HTTP/1.1" 400 987 "-" "RestSharp/105.2.3.0"
당신이 전화는 문자를 제외하고는 동일하다 볼 수 있듯이. 아마도 문제는이 문자로 인해 발생했을 것입니다. 그러나 성공하는이 문자를 사용하는 호출의 다른 예가 있습니다.
GET /api/interpreter?data=[bbox][out:json];way[highway=primary];(._;%3E;);out;&bbox=27.8539696457985,-33.0194661675922,27.9045061954916,-33.0053817324078 HTTP/1.1" 200 6037 "-" "RestSharp/105.2.3.0"
여기에 무슨 일이 일어나고 있습니까? 캐릭터가 400을 일으키는가 아니면 다른 것입니까?
"캐릭터가 400을 일으키고 있습니까? 아니면 다른 것입니까?" 이 문자를 수정하면 그것을 볼 수 있습니다. – scai