91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

嵌入式設(shè)備如何顯示IP屬地?

Q4MP_gh_c472c21 ? 來(lái)源:電子電路開(kāi)發(fā)學(xué)習(xí) ? 作者:電子電路開(kāi)發(fā)學(xué)習(xí) ? 2022-05-05 14:17 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

最近這兩天,微博、微信、抖音、知乎等網(wǎng)絡(luò)平臺(tái)都上線了IP屬地功能,用戶的個(gè)人主頁(yè),或者在發(fā)表視頻、博文、評(píng)論、投票時(shí),會(huì)顯示用戶當(dāng)前的IP屬地,國(guó)內(nèi)用戶顯示省份/地區(qū),國(guó)外用戶顯示國(guó)家/地區(qū)。IP屬地的上線讓很多國(guó)外、本地博主現(xiàn)出了原形,出現(xiàn)了IP屬地和資料地址不符的情況。

b7c56a3e-cc29-11ec-bce3-dac502259ad0.jpg

IP屬地來(lái)了,不讓物聯(lián)網(wǎng)設(shè)備“裸泳”,給你的設(shè)備加個(gè)自動(dòng)獲取IP屬地的功能吧! 對(duì)于嵌入式物聯(lián)網(wǎng)設(shè)備,除了一些特殊場(chǎng)合,比如環(huán)境監(jiān)測(cè)、路徑規(guī)劃、定位追蹤等,需要通過(guò)GPS模塊獲取精確的地理位置,對(duì)于一些天氣預(yù)報(bào)、疫情數(shù)據(jù)相關(guān)的設(shè)備來(lái)說(shuō),地理位置要求沒(méi)那么精確,只需要基本的時(shí)區(qū)、國(guó)家、城市/省份信息即可。本文介紹,如何基于已有的WiFi/4G/5G聯(lián)網(wǎng)功能,添加一個(gè)自動(dòng)獲取IP屬地功能。共分為以下三個(gè)步驟:
  • 接口獲取
  • 接口訪問(wèn)
  • JSON數(shù)據(jù)解析

1.獲取API接口

IP定位需要使用公網(wǎng)IP,比如123.105.127.111,而不能是局域網(wǎng)IP,比如192.169.1.100。常用的IP定位接口有兩種:
  • 一種是不需要知道當(dāng)前設(shè)備的IP地址,直接訪問(wèn)接口,接口會(huì)返回設(shè)備的IP地址。
  • 一種是已知設(shè)備的IP地址,在訪問(wèn)接口時(shí)傳入IP地址參數(shù),接口會(huì)返回傳入IP地址的經(jīng)緯度、時(shí)區(qū)、國(guó)家、省份、城市等信息。
還有的是將以上兩種接口整合為一個(gè),無(wú)需事先知道設(shè)備的IP地址,直接使用設(shè)備訪問(wèn)接口,就會(huì)返回公網(wǎng)IP、經(jīng)緯度、時(shí)區(qū)、國(guó)家、城市等信息。這里推薦一個(gè)免費(fèi)的API接口:

		遠(yuǎn)程服務(wù)器地址:103.205.5.249 遠(yuǎn)程服務(wù)器端口號(hào):80 API接口:http://api.k780.com/?app=ip.local&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=json 返回的JSON數(shù)據(jù):

		{ "success":"1", "result":{ "ip":"102.212.134.15", "proxy":"1", "att":"中國(guó),北京", "operators":"聯(lián)通" } } 先用網(wǎng)絡(luò)調(diào)試助手測(cè)試一下:
			

b7ef6532-cc29-11ec-bce3-dac502259ad0.jpg

API接口沒(méi)問(wèn)題,下一步使用嵌入式設(shè)備來(lái)完成自動(dòng)獲取IP地址。

2.嵌入式訪問(wèn)接口

聯(lián)網(wǎng)模塊主要有WiFi或移動(dòng)網(wǎng)絡(luò)4G模塊,這里以比較常用的ESP8266 WiFi模塊+STM32為例,來(lái)演示通過(guò)串口AT指令來(lái)訪問(wèn)IP定位接口,下面是我使用STM32配置ESP8266的過(guò)程:

b800e726-cc29-11ec-bce3-dac502259ad0.jpg

3.JSON數(shù)據(jù)解析

嵌入式設(shè)備可以使用的JSON解析庫(kù),常用的JSON解析庫(kù)有cJSON和Jansson等。如果你覺(jué)得使用解析庫(kù)會(huì)額外的增加程序大小,你也可以使用字符串操作的一些函數(shù),從返回的JSON字符串中提取出你想要的數(shù)據(jù),這樣會(huì)節(jié)省一部分微控制器ROM空間。下面直接給出基于cJSON庫(kù),對(duì)以上IP定位接口返回?cái)?shù)據(jù)進(jìn)行解析的函數(shù):

		#include"cJSON.h" uint8_tparse_api_data(char*jsonstr) { cJSON*root; cJSON*result; char*ip; char*loc; char*net; //printf("recvdata:%d-%s ",strlen((constchar*)jsonstr),jsonstr);//JSON原始數(shù)據(jù) root=cJSON_Parse((constchar*)USART2_RX_BUF); if(root!=0) { printf("---JSONformatok--- "); result=cJSON_GetObjectItem(root,"result"); ip=cJSON_GetObjectItem(result,"ip")->valuestring;//164.123.44.15 loc=cJSON_GetObjectItem(result,"att")->valuestring;//中國(guó),北京 net=cJSON_GetObjectItem(result,"operators")->valuestring;//聯(lián)通 printf("ip:%s loc:%s net:%s ",ip,loc,net); } else { printf("JSONformaterror:%s ",cJSON_GetErrorPtr());//輸出json格式錯(cuò)誤信息 return1; } cJSON_Delete(root); return0; } 

4.商用API接口

還有一些其他的免費(fèi)接口:

			/*返回IP地址,地區(qū)、時(shí)序、國(guó)家等信息,默認(rèn)是英文的*/ http://ip-api.com/json/ /*可選中文*/ http://ip-api.com/json/?lang=zh-CN /*SOHU接口,非標(biāo)準(zhǔn)JSON*/ http://pv.sohu.com/cityjson /*國(guó)內(nèi)的PCOnline提供的接口,定位不準(zhǔn)確*/ http://whois.pconline.com.cn/ipJson.jsp?json=true&ip=14.16.139.216 /*國(guó)外geoplugin公司提供的接口,包括經(jīng)緯度、時(shí)區(qū)、貨幣單位、對(duì)美元匯率等信息*/ http://www.geoplugin.net/json.gp以上免費(fèi)接口都有隨時(shí)關(guān)停的可能,如果用于商業(yè)用途,建議還是選擇第三方商業(yè)公司提供的接口,或者自己開(kāi)發(fā)API接口。本文推薦使用三大地圖提供商的IP定位服務(wù),一般支持自動(dòng)定位,或查詢指定IP地址對(duì)應(yīng)的地址,返回信息一般包括國(guó)家,省份/城市,行政區(qū)劃代碼,經(jīng)緯度等信息,數(shù)據(jù)格式一般支持JSON或XML,請(qǐng)求方式為GET或POST,可以進(jìn)入官方網(wǎng)站查看詳細(xì)的API文檔,根據(jù)需求來(lái)選擇:
  • 騰訊位置服務(wù)
https://lbs.qq.com/service/webService/webServiceGuide/webServiceIp
  • 百度地圖開(kāi)放平臺(tái)
百度地圖接口分為兩個(gè):普通IP定位和智能硬件定位,可以利用藍(lán)牙、WI-FI、基站、GPS等信息,獲取定位信息。https://lbsyun.baidu.com/index.php?title=webapi/intel-hardware-apihttps://lbsyun.baidu.com/index.php?title=webapi/ip-api
  • 高德開(kāi)放平臺(tái)
https://lbs.amap.com/api/webservice/guide/api/ipconfig如果對(duì)于訪問(wèn)次數(shù)和訪問(wèn)流量要求不高的話,只需要認(rèn)證個(gè)人開(kāi)發(fā)者/企業(yè)用戶,就可以免費(fèi)使用。 IP屬地的上線,讓人在美國(guó),剛下飛機(jī),這類的社交謊言不攻自破,功能上線的真正目的還是為了維護(hù)真實(shí)的網(wǎng)絡(luò)環(huán)境,減少惡意造謠、蹭流量的不良行為。也希望大家在社交網(wǎng)絡(luò),展現(xiàn)自己真實(shí)的一面! 審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴

原文標(biāo)題:嵌入式設(shè)備如何顯示IP屬地?

文章出處:【微信號(hào):gh_c472c2199c88,微信公眾號(hào):嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    什么是嵌入式應(yīng)用開(kāi)發(fā)?

    、實(shí)現(xiàn)和部署,還包括硬件選擇、軟件設(shè)計(jì)、測(cè)試、集成和維護(hù)等流程?。 定義和背景 嵌入式應(yīng)用開(kāi)發(fā)是指將軟件部署到嵌入式系統(tǒng)中,這些系統(tǒng)廣泛應(yīng)用于消費(fèi)電子和工業(yè)自動(dòng)化中。嵌入式系統(tǒng)通常被嵌入
    發(fā)表于 01-12 16:13

    arm嵌入式主板優(yōu)缺點(diǎn)

    嵌入式主板是嵌入設(shè)備里面做控制、數(shù)據(jù)處理使用的CPU板 ,常見(jiàn)的有兩類,即基于X86的嵌入式主板和基于RISC的ARM 嵌入式主板。今天我
    發(fā)表于 01-08 07:08

    什么是嵌入式操作系統(tǒng)?

    、嵌入式操作系統(tǒng)的定義 嵌入式操作系統(tǒng)是專門為資源受限的嵌入式設(shè)備(比如 STM32 單片機(jī)、物聯(lián)網(wǎng)模塊、工業(yè)控制器)設(shè)計(jì)的微型操作系統(tǒng),核心作用是:管理硬件資源、調(diào)度多任務(wù)、提供標(biāo)
    發(fā)表于 12-09 10:33

    C語(yǔ)言在嵌入式開(kāi)發(fā)中的應(yīng)用

    。C 語(yǔ)言可以利用 Socket 編程等技術(shù),實(shí)現(xiàn)嵌入式設(shè)備與服務(wù)器之間的 TCP/IP 通信,確保數(shù)據(jù)的可靠傳輸。同時(shí),C 語(yǔ)言還可以結(jié)合輕量級(jí)的 TCP/IP 協(xié)議棧,如 lwIP
    發(fā)表于 11-21 08:09

    嵌入式開(kāi)發(fā)的關(guān)鍵點(diǎn)介紹

    設(shè)備和移動(dòng)設(shè)備。因此,嵌入式開(kāi)發(fā)需要考慮系統(tǒng)的功耗,并編寫(xiě)節(jié)能的代碼以延長(zhǎng)系統(tǒng)的使用壽命。 4. 軟件集成: 嵌入式系統(tǒng)通常需要與其他設(shè)備
    發(fā)表于 11-13 08:12

    Ethernet ip轉(zhuǎn)SPI嵌入式板卡-讓機(jī)器人與單片機(jī)互相聯(lián)動(dòng)

    發(fā)那科機(jī)器人通過(guò)EtherNet/IP主站與SPI嵌入式板卡聯(lián)動(dòng),實(shí)現(xiàn)遠(yuǎn)程控制SPI設(shè)備與數(shù)據(jù)采集,涵蓋硬件連接、IP配置、數(shù)據(jù)映射及通信驗(yàn)證,適用于機(jī)器人工作站集成SPI傳感器/執(zhí)行
    的頭像 發(fā)表于 11-10 11:40 ?847次閱讀
    Ethernet <b class='flag-5'>ip</b>轉(zhuǎn)SPI<b class='flag-5'>嵌入式</b>板卡-讓機(jī)器人與單片機(jī)互相聯(lián)動(dòng)

    嵌入式需要掌握哪些核心技能?

    /網(wǎng)絡(luò)設(shè)備)、中斷底半部處理,適用于高端嵌入式設(shè)備。 企業(yè)需求:RTOS是60%崗位的核心要求,Linux開(kāi)發(fā)需求隨項(xiàng)目復(fù)雜度增長(zhǎng)。 4)通信協(xié)議與接口 基礎(chǔ)協(xié)議:UART、SPI、I2C、CAN總線
    發(fā)表于 10-21 16:25

    入行嵌入式應(yīng)該怎么準(zhǔn)備?

    任務(wù)調(diào)度的代碼是非常重要的。此外,了解操作系統(tǒng)內(nèi)核的工作原理以及與硬件交互的方式也是必須的。 四、通信協(xié)議嵌入式系統(tǒng)通常需要與其他設(shè)備或系統(tǒng)進(jìn)行通信。了解常見(jiàn)的通信協(xié)議(如UART、SPI、I2C
    發(fā)表于 08-06 10:34

    MicroBlaze處理器嵌入式設(shè)計(jì)用戶指南

    *本指南內(nèi)容涵蓋了在嵌入式設(shè)計(jì)中使用 MicroBlaze 處理器、含存儲(chǔ)器 IP 核的設(shè)計(jì)、IP integrator 中的復(fù)位和時(shí)鐘拓?fù)浣Y(jié)構(gòu)。獲取完整版《 MicroBlaze 處理器嵌入
    的頭像 發(fā)表于 07-28 10:43 ?1109次閱讀

    嵌入式工業(yè)顯示器如何提升自動(dòng)化設(shè)備的操作效率??

    在工業(yè) 4.0 的浪潮下,自動(dòng)化設(shè)備在各行業(yè)中的應(yīng)用愈發(fā)廣泛,而嵌入式工業(yè)顯示器作為自動(dòng)化設(shè)備的關(guān)鍵人機(jī)交互界面,其性能優(yōu)劣直接影響著設(shè)備
    的頭像 發(fā)表于 07-14 15:55 ?718次閱讀

    Linux嵌入式和單片機(jī)嵌入式的區(qū)別?

    Linux嵌入式與單片機(jī)嵌入式在多個(gè)方面存在顯著的區(qū)別,以下是詳細(xì)的比較和歸納: 一、基本概念 1. Linux嵌入式: 定義:將Linux操作系統(tǒng)運(yùn)行在嵌入式
    發(fā)表于 06-20 09:46

    嵌入式開(kāi)發(fā)入門指南:從零開(kāi)始學(xué)習(xí)嵌入式

    特定功能的計(jì)算機(jī)系統(tǒng),廣泛應(yīng)用于智能家居、工業(yè)控制、醫(yī)療設(shè)備、車載系統(tǒng)等領(lǐng)域。 2. 學(xué)習(xí)嵌入式開(kāi)發(fā)的前置知識(shí)熟悉C語(yǔ)言編程掌握基本的數(shù)據(jù)結(jié)構(gòu)與算法了解數(shù)字電路與微控制器原理熟悉Linux操作系統(tǒng)
    發(fā)表于 05-15 09:29

    MAXQ1061/MAXQ1062用于嵌入式設(shè)備的DeepCover加密控制器技術(shù)手冊(cè)

    DeepCover?嵌入式安全方案采用多重先進(jìn)的物理安全機(jī)制保護(hù)敏感數(shù)據(jù),提供最高等級(jí)的密鑰存儲(chǔ)安全保護(hù)。 DeepCover加密控制器(MAXQ1061)保護(hù)軟件IP、通信和盈利模式的保密性、真實(shí)性和完整性。它是用于連接嵌入式
    的頭像 發(fā)表于 05-14 10:43 ?1004次閱讀

    飛凌嵌入式2025嵌入式及邊緣AI技術(shù)論壇圓滿結(jié)束

    飛凌嵌入式「2025嵌入式及邊緣AI技術(shù)論壇」在深圳深鐵皇冠假日酒店盛大舉行,此次活動(dòng)邀請(qǐng)到了200余位嵌入式技術(shù)領(lǐng)域的技術(shù)專家、企業(yè)代表和工程師用戶,共享嵌入式及邊緣AI技術(shù)的盛宴!
    的頭像 發(fā)表于 04-28 13:57 ?4168次閱讀
    飛凌<b class='flag-5'>嵌入式</b>2025<b class='flag-5'>嵌入式</b>及邊緣AI技術(shù)論壇圓滿結(jié)束

    飛凌嵌入式「2025嵌入式及邊緣AI技術(shù)論壇」議程公布

    4月22日,飛凌嵌入式“2025嵌入式及邊緣AI技術(shù)論壇”將在深圳舉行,論壇以“新生態(tài),智未來(lái)”為主題,旨在匯聚行業(yè)智慧,探討嵌入式技術(shù)與邊緣AI的深度融合與創(chuàng)新應(yīng)用。
    的頭像 發(fā)表于 04-02 15:12 ?1383次閱讀
    飛凌<b class='flag-5'>嵌入式</b>「2025<b class='flag-5'>嵌入式</b>及邊緣AI技術(shù)論壇」議程公布