当前位置: 首页 > news >正文

怎么做网站支付百度做网站推广电话

怎么做网站支付,百度做网站推广电话,杭州vi设计价格,php网站开发和部署前言: 在写一个天气预报模块时,需要一个定位功能,在网上翻来翻去才找着,放在这里留着回顾下,也帮下有需要的人 正文: 一开始我想着直接调用百度地图的API来定位, 然后我就想先获取本机IP的方…

前言:

在写一个天气预报模块时,需要一个定位功能,在网上翻来翻去才找着,放在这里留着回顾下,也帮下有需要的人

正文:

  1. 一开始我想着直接调用百度地图的API来定位,
    在这里插入图片描述

  2. 然后我就想先获取本机IP的方式,然后调用百度地图的api来进行对位,结果怎么弄都只能获取到私有IP,私有IP是没法用来定位,但还是具体代码还是贴在这下:

QString MainWindow::getIP()//返回一个IP地址,但是是私有的
{QList<QHostAddress> list=QNetworkInterface::allAddresses();foreach (QHostAddress address, list) {if(address.protocol()==QAbstractSocket::IPv4Protocol)return address.toString();}return "0.0.0.0";
}
  1. 重点来了,我找到了一个可以获取公有IP和当前用户所在市的API,http://whois.pconline.com.cn/ipJson.jsp?json=true,调用这个API,就可以了
  • 要调用之前,要写一个类去存放(拆解)返回JSON数组,很简单,毕竟这个JSON数组的内容很少
#include <QObject.h>
class location{
public:location(){ip="";pro="";proCode="";city="";cityCode=0;}QString ip;QString pro;QString proCode;QString city;QString cityCode;
};
  • http请求,
    在头文件定义两个变量,还有需要用的到函数:
protected://解析本机外网IP,并获取所在市void locationInfo();
private slots://处理定位API请求void onLocationInfoReceived(QNetworkReply *reply);private://定位数据location mlocation;//定位用的API的请求QNetworkAccessManager* mLocationManger;

放在在构造函数:

    //定位请求mLocationManger=new QNetworkAccessManager(this);
connect(mLocationManger,&QNetworkAccessManager::finished,this,&MainWindow::onLocationInfoReceived);locationInfo();

void MainWindow::locationInfo()
{QUrl url("http://whois.pconline.com.cn/ipJson.jsp?json=true");mLocationManger->get(QNetworkRequest(url));
}
void MainWindow::onLocationInfoReceived(QNetworkReply *reply)
{if (reply->error() == QNetworkReply::NoError) {QString data = QString::fromLocal8Bit(reply->readAll());QJsonDocument jsonDocument = QJsonDocument::fromJson(data.toUtf8());QJsonObject jsonObject = jsonDocument.object();qDebug()<<"read all:"<<jsonObject;mlocation.ip = jsonObject.value("ip").toString();mlocation.pro = jsonObject.value("pro").toString();mlocation.proCode = jsonObject.value("proCode").toString();mlocation.city = jsonObject.value("city").toString();mlocation.cityCode = jsonObject.value("cityCode").toString();} else {qDebug() << "Location request error: " << reply->errorString();}qDebug()<<mlocation.city;//请求天气信息getWeatherInfo(mlocation.city);reply->deleteLater();//deleteLater 是 Qt 框架中的一个方法,用于在对象的生命周期结束时安全地删除对象
}
http://www.shuangfujiaoyu.com/news/48819.html

相关文章:

  • 网站建设顺序百度大全免费下载
  • 银川公司做网站刚刚刚刚刚刚刚刚刚刚刚刚刚刚刚
  • 网站如何快速免费推广什么是seo?
  • 如何做淘宝联盟网站的推广米拓建站
  • 网站建设公司哪家专业厦门百度代理
  • 手机建站永久免费软件广州seo网站开发
  • 广东省住房与城乡建设厅网站推广产品引流的最佳方法
  • 网站忧化靠谱seo淘宝优化标题都是用什么软件
  • 网站框架地图百度快速排名用是
  • 怎么做五合一网站新闻类软文营销案例
  • 网站运维工作内容市场调研报告的基本框架
  • 网站怎么做速排推广普通话演讲稿
  • 网站建设规划表简述seo和sem的区别与联系
  • wordpress建站的利弊怎样做百度推广
  • 国外做化工产品的网站长沙seo公司排名
  • 北京建网站找哪个公司中国今天最新军事新闻
  • 自适应网站平台沧州网络推广外包公司
  • 做设计必知网站网站seo排名优化工具在线
  • 电子商务烟台网站建设腾讯疫情实时数据
  • 360网站seo如何做厦门关键词排名优化
  • 专业网站建设搭建2023年6月份疫情严重吗
  • 外贸开源网站建站流程主要有哪些
  • 免费域名申请网站空间最新新闻事件今天疫情
  • 百度做网站吗网站seo推广公司靠谱吗
  • 做外贸生意哪个网站好未来网络营销的发展趋势
  • 北美购物网站排名网站设计制作的服务怎么样
  • 一级a做爰片就在线手机看韩国网站seo综合查询站长工具关键词
  • 免费空间自助建站模板网站怎么优化推广
  • 用别人网站做app的危害seo网站推广工具
  • 运维兼职平台南京seo代理