


Cara menggunakan rangka kerja koa dalam nod untuk memanggil antara muka peta Gaode
Bagaimana untuk menggunakan rangka kerja koa dalam nodejs untuk memanggil antara muka peta Gaode? Artikel berikut akan memperkenalkan kepada anda cara melaraskan antara muka peta Gaode dalam nod koa. Saya harap ia akan membantu anda!
Amap Open Platform
Apakah perkara paling penting yang kita perlukan untuk melaraskan antara muka Amap❓ Kita memerlukan kunci Peta Amap. Ikuti langkah di bawah untuk memasuki platform terbuka Amap.
Buat Apl
Tambah kunci
Perhatikan di sini bahawa platform perkhidmatan yang berbeza sepadan dengan perkhidmatan yang tersedia yang berbeza. Seperti yang ditunjukkan di bawah, saya menggunakan perkhidmatan web
untuk menjana kunci
koa meminta antara muka pihak ketiga
koa2-permintaan
Meminta antara muka pihak ketiga dalam nod sebenarnya memulakan permintaan permintaan. Prinsip yang sama digunakan untuk crawler. Kami menggunakan koa2-request sebagai perpustakaan untuk nod untuk memulakan permintaan. Kerana kami menggunakan rangka kerja koa.
Alamat: https://www.npmjs.com/package/koa2-request Sebenarnya, anda tidak perlu membacanya, itu sahaja pengenalan.
Pemasangan:
npm install koa2-request
- Penggunaan asas
Async menunggu disokong di sini
var koa2Req = require('koa2-request'); app.use(async(ctx, next) => { // request选项 var res = await koa2Req('http://www.baidu.com'); ctx.body = res.body; });
Mulakan
Antara muka cuaca
Apabila kami masuk, kami terkejut kerana mendapati bahawa dia memerlukan bandar dan kunci sebagai parameter
, tetapi tidak praktikal untuk kami memasukkan kod yang sepadan dengan bandar secara manual. Walaupun saya mengingatinya, ia akan menjadi pengalaman pengguna yang sangat buruk. Kemudian sebenarnya, Amap juga mempunyai antara muka penentududukan IP. Jadi mari melompat ke bawah dan lihat.
Kedudukan IP
https://lbs.amap.com/api/webservice/guide/api/ipconfig
Dua parameter diperlukan di sini ip dan kunci
Bercakap tentang IP, anda juga memerlukan pemalam
- Alamat https://www.npmjs.com/package / public-ip
- Penggunaan asas
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' })();
Berikut ialah pelaksanaan khusus saya, menggunakan ip dan kunci sebagai parameter
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; } }
Format bagi nilai pulangan
{ "status" :"1", "info" :"OK", "infocode" :"10000", "province" :"北京市", "city" :"北京市", "adcode" :"110000", "rectangle" :"116.0119343,39.66127144;116.7829835,40.2164962" }
Kami ingin mendapatkan kod iklan kod bandar, res.body ialah nilai yang kami peroleh semula daripada antara muka. Gunakan JSON.parse untuk menukarnya kepada objek JSON.
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') }
Seterusnya, anda boleh memanggil antara muka cuaca Antara muka cuaca memerlukan kod bandar dan kunci yang baru kami perolehi sebagai parameter.
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') var res_weather = await koa2Req(`https://restapi.amap.com/v3/weather/weatherInfo?city=${city}&key=${gaode_key}`) let weather = {data: JSON.parse(res_weather.body)} ctx.body = weather; }
Untuk lebih banyak pengetahuan berkaitan nod, sila lawati: tutorial nodejs!
Atas ialah kandungan terperinci Cara menggunakan rangka kerja koa dalam nod untuk memanggil antara muka peta Gaode. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Cara memadam nod dengan nvm: 1. Muat turun "nvm-setup.zip" dan pasangkannya pada pemacu C 2. Konfigurasikan pembolehubah persekitaran dan semak nombor versi melalui arahan "nvm -v" 3. Gunakan "nvm arahan install" Pasang nod; 4. Padamkan nod yang dipasang melalui arahan "nvm uninstall".

Bagaimana untuk mengendalikan muat naik fail? Artikel berikut akan memperkenalkan kepada anda cara menggunakan ekspres untuk mengendalikan muat naik fail dalam projek nod saya harap ia akan membantu anda!

Dalam tempoh ini, saya sedang membangunkan perkhidmatan dinamik HTML yang biasa kepada semua kategori dokumen Tencent Untuk memudahkan penjanaan dan penggunaan akses kepada pelbagai kategori, dan untuk mematuhi trend beralih ke awan, saya sedang mempertimbangkan. menggunakan Docker untuk membetulkan kandungan perkhidmatan dan mengurus versi produk secara seragam. Artikel ini akan berkongsi pengalaman pengoptimuman yang saya kumpulkan dalam proses perkhidmatan Docker untuk rujukan anda.

Artikel ini akan berkongsi dengan anda alat pengurusan proses Node "pm2", dan bercakap tentang mengapa pm2 diperlukan, cara memasang dan menggunakan pm2, saya harap ia akan membantu semua orang!

Penjelasan dan Panduan Pemasangan Terperinci untuk Pinetwork Nodes Artikel ini akan memperkenalkan ekosistem pinetwork secara terperinci - nod pi, peranan utama dalam ekosistem pinetwork, dan menyediakan langkah -langkah lengkap untuk pemasangan dan konfigurasi. Selepas pelancaran Rangkaian Ujian Blockchain Pinetwork, nod PI telah menjadi bahagian penting dari banyak perintis yang aktif mengambil bahagian dalam ujian, bersiap sedia untuk pelepasan rangkaian utama yang akan datang. Jika anda tidak tahu kerja pinet, sila rujuk apa itu picoin? Berapakah harga untuk penyenaraian? Penggunaan PI, perlombongan dan analisis keselamatan. Apa itu Pinetwork? Projek Pinetwork bermula pada tahun 2019 dan memiliki syiling pi cryptocurrency eksklusifnya. Projek ini bertujuan untuk mewujudkan satu yang semua orang boleh mengambil bahagian

Bagaimana untuk membungkus fail boleh laku nodejs dengan pkg? Artikel berikut akan memperkenalkan kepada anda cara menggunakan pkg untuk membungkus projek Node ke dalam fail boleh laku. Saya harap ia akan membantu anda!

Pengesahan adalah salah satu bahagian terpenting dalam mana-mana aplikasi web. Tutorial ini membincangkan sistem pengesahan berasaskan token dan cara ia berbeza daripada sistem log masuk tradisional. Pada penghujung tutorial ini, anda akan melihat demo berfungsi sepenuhnya yang ditulis dalam Angular dan Node.js. Sistem Pengesahan Tradisional Sebelum beralih kepada sistem pengesahan berasaskan token, mari kita lihat sistem pengesahan tradisional. Pengguna memberikan nama pengguna dan kata laluan mereka dalam borang log masuk dan klik Log Masuk. Selepas membuat permintaan, sahkan pengguna di bahagian belakang dengan menanyakan pangkalan data. Jika permintaan itu sah, sesi dibuat menggunakan maklumat pengguna yang diperoleh daripada pangkalan data dan maklumat sesi dikembalikan dalam pengepala respons supaya ID sesi disimpan dalam penyemak imbas. Menyediakan akses kepada aplikasi tertakluk kepada

npm node gyp gagal kerana versi "node-gyp.js" dan "Node.js" tidak sepadan Penyelesaiannya: 1. Kosongkan cache nod melalui "npm cache clean -f" 2. Melalui "npm install -. g n" Pasang modul n; 3. Pasang versi "nod v12.21.0" melalui arahan "n v12.21.0".
