찾다
웹 프론트엔드JS 튜토리얼노드에서 Koa 프레임워크를 사용하여 Gaode 맵 인터페이스를 호출하는 방법

Amap 맵 인터페이스를 호출하기 위해 nodejs에서 koa 프레임워크를 사용하는 방법은 무엇입니까? 다음 글에서는 node+koa를 사용하여 Amap 인터페이스를 조정하는 방법을 소개하겠습니다. 도움이 되셨으면 좋겠습니다!

노드에서 Koa 프레임워크를 사용하여 Gaode 맵 인터페이스를 호출하는 방법

Amap Open Platform

Amap 인터페이스를 조정하는데 가장 중요한 것은 무엇인가요❓ Amap 맵의 키가 필요합니다. Amap 오픈 플랫폼에 들어가려면 아래 단계를 따르세요.

노드에서 Koa 프레임워크를 사용하여 Gaode 맵 인터페이스를 호출하는 방법

애플리케이션 만들기

노드에서 Koa 프레임워크를 사용하여 Gaode 맵 인터페이스를 호출하는 방법

키 추가

여기서, 서로 다른 서비스 플랫폼은 서로 다른 사용 가능한 서비스에 해당한다는 점에 유의하세요. 아래와 같이 웹 서비스

노드에서 Koa 프레임워크를 사용하여 Gaode 맵 인터페이스를 호출하는 방법

노드에서 Koa 프레임워크를 사용하여 Gaode 맵 인터페이스를 호출하는 방법

를 사용하여 키

노드에서 Koa 프레임워크를 사용하여 Gaode 맵 인터페이스를 호출하는 방법koa 요청 타사 인터페이스

koa2-request

를 사용하고 있습니다. 노드에서

에서 타사 인터페이스를 요청하는 것은 실제로 요청 요청을 시작하는 것입니다. 크롤러에도 동일한 원칙이 적용됩니다. 우리는 노드가 요청을 시작하기 위한 라이브러리로 koa2-request를 사용합니다. 왜냐하면 우리는 Koa 프레임워크를 사용하기 때문입니다.

주소: https://www.npmjs.com/package/koa2-request 사실 읽어보실 필요는 없고 소개가 전부입니다. intallation :
  • npm install koa2-request
    avasic usage async await가 여기에서 뒷받침됩니다.

  • 하지만 도시에 해당하는 코드를 수동으로 입력하는 것은 실용적이지 않습니다. 기억한다고 해도 매우 열악한 사용자 경험이 될 것입니다. 실제로 Amap에는 IP 포지셔닝 인터페이스도 있습니다. 그럼 아래로 내려가서 살펴보도록 하겠습니다.
    IP 포지셔닝
https://lbs.amap.com/api/webservice/guide/api/ipconfig

여기에는 ip와 key라는 두 개의 매개변수가 필요합니다.

IP에 대해 말하자면, 여기에 있습니다. 플러그인이 필요합니다

주소 https://www.npmjs.com/package/public-ip

기본 사용법

var koa2Req = require('koa2-request');
 
app.use(async(ctx, next) => {
    // request选项
    var res = await koa2Req('http://www.baidu.com');
    ctx.body = res.body;
});

다음은 ip와 키를 매개변수로 사용하는 구체적인 구현입니다노드에서 Koa 프레임워크를 사용하여 Gaode 맵 인터페이스를 호출하는 방법

const publicIp = require('public-ip');

(async () => {
	console.log(await publicIp.v4());
	//=> '46.5.21.123'

	console.log(await publicIp.v6());
	//=> 'fe80::200:f8ff:fe21:67cf'
})();

형식 반환 값

const koa2Req = require('koa2-request');
const publicIp = require('public-ip') // 获取外网ip
const gaode_key = '8a674879652195a8bc6ff51357199517'
class clientController {
    async getWeather(ctx, next) {
        const ip_param = await publicIp.v4()
        var res = await koa2Req(`https://restapi.amap.com/v3/ip?ip=${ip_param}&output=json&key=${gaode_key}`);
        ctx.body = res;
    }
}

우리는 도시 코드 adcode를 얻고 싶습니다. res.body는 인터페이스에서 반환되는 값입니다. JSON.parse를 사용하여 JSON 개체로 변환합니다.

{

       "status" :"1",
       "info" :"OK",
       "infocode" :"10000",
       "province" :"北京市",
       "city" :"北京市",
       "adcode" :"110000",
       "rectangle" :"116.0119343,39.66127144;116.7829835,40.2164962"

  }
다음으로 날씨 인터페이스를 호출할 수 있습니다. 날씨 인터페이스에는 방금 얻은 도시 코드와 키가 매개변수로 필요합니다.
    async getWeather(ctx, next) {
        const ip_param = await publicIp.v4()
        var res = await koa2Req(`https://restapi.amap.com/v3/ip?ip=${ip_param}&output=json&key=${gaode_key}`);
        const city = JSON.parse(res.body).adcode
        console.log(city,'city')
    }

노드 관련 지식을 더 보려면

nodejs 튜토리얼

을 방문하세요!

위 내용은 노드에서 Koa 프레임워크를 사용하여 Gaode 맵 인터페이스를 호출하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 掘金社区에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
node、nvm与npm有什么区别node、nvm与npm有什么区别Jul 04, 2022 pm 04:24 PM

node、nvm与npm的区别:1、nodejs是项目开发时所需要的代码库,nvm是nodejs版本管理工具,npm是nodejs包管理工具;2、nodejs能够使得javascript能够脱离浏览器运行,nvm能够管理nodejs和npm的版本,npm能够管理nodejs的第三方插件。

Vercel是什么?怎么部署Node服务?Vercel是什么?怎么部署Node服务?May 07, 2022 pm 09:34 PM

Vercel是什么?本篇文章带大家了解一下Vercel,并介绍一下在Vercel中部署 Node 服务的方法,希望对大家有所帮助!

node爬取数据实例:聊聊怎么抓取小说章节node爬取数据实例:聊聊怎么抓取小说章节May 02, 2022 am 10:00 AM

node怎么爬取数据?下面本篇文章给大家分享一个node爬虫实例,聊聊利用node抓取小说章节的方法,希望对大家有所帮助!

node导出模块有哪两种方式node导出模块有哪两种方式Apr 22, 2022 pm 02:57 PM

node导出模块的两种方式:1、利用exports,该方法可以通过添加属性的方式导出,并且可以导出多个成员;2、利用“module.exports”,该方法可以直接通过为“module.exports”赋值的方式导出模块,只能导出单个成员。

安装node时会自动安装npm吗安装node时会自动安装npm吗Apr 27, 2022 pm 03:51 PM

安装node时会自动安装npm;npm是nodejs平台默认的包管理工具,新版本的nodejs已经集成了npm,所以npm会随同nodejs一起安装,安装完成后可以利用“npm -v”命令查看是否安装成功。

node中是否包含dom和bomnode中是否包含dom和bomJul 06, 2022 am 10:19 AM

node中没有包含dom和bom;bom是指浏览器对象模型,bom是指文档对象模型,而node中采用ecmascript进行编码,并且没有浏览器也没有文档,是JavaScript运行在后端的环境平台,因此node中没有包含dom和bom。

聊聊V8的内存管理与垃圾回收算法聊聊V8的内存管理与垃圾回收算法Apr 27, 2022 pm 08:44 PM

本篇文章带大家了解一下V8引擎的内存管理与垃圾回收算法,希望对大家有所帮助!

聊聊Node.js path模块中的常用工具函数聊聊Node.js path模块中的常用工具函数Jun 08, 2022 pm 05:37 PM

本篇文章带大家聊聊Node.js中的path模块,介绍一下path的常见使用场景、执行机制,以及常用工具函数,希望对大家有所帮助!

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.