[Flutter] 좌표 기반 주소로 변경 (Naver Map API)

huny·2023년 9월 1일
0

flutter

목록 보기
15/18
post-thumbnail

좌표 데이터를 받아왔을 때, 이 좌표가 당최 어디인지 파악이 되지 않는다.
우리는 이를 주소로 받아올 필요가 있다.

그래서 네이버 API로 이를 변환해봤다.

공식문서는 여기

API 발급이 우선이니까, 필요하면 발급부터 받자.
Naver Map API 여기 들어가서 이용 신청하기 누르면 된다.
그다음 로그인 하고 필요한 서비스를 선택하는 과정을 밟으면 끝.

이 기능을 우리는 쓰는것이다.

간단하게 좌표값을 받아와서 주소로 프린트하는 함수로 구현해봤다.

Future<void> getAddress(position) async {
  const String apiUrl =
      "https://naveropenapi.apigw.ntruss.com/map-reversegeocode/v2/gc";
  String coords = position; // 여기에 입력 좌표 값을 넣으세요
  const String orders = "legalcode"; // 여기에 변환 작업 이름 값을 넣으세요
  const String output = "json"; // 여기에 출력 형식 값을 넣으세요
  const String apiKeyId = naverMapApiKey;
  const String apiKeySecret = naverMapApiSecret;

  Future<void> fetchData() async {
    final response = await http.get(
      Uri.parse("$apiUrl?coords=$coords&orders=$orders&output=$output"),
      headers: {
        "X-NCP-APIGW-API-KEY-ID": apiKeyId,
        "X-NCP-APIGW-API-KEY": apiKeySecret,
      },
    );

    if (response.statusCode == 200) {
      // JSON 응답 파싱
      final Map<String, dynamic> data = json.decode(response.body);
      debugPrint("Response Data: $data");
    } else {
      // 요청 실패 처리
      debugPrint("Failed to load data: ${response.statusCode}");
    }
  }

  fetchData();
}
profile
재밌게 하고싶다.

0개의 댓글