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

国外 网页框架搭建的网站在网站建设工作会议上讲话

国外 网页框架搭建的网站,在网站建设工作会议上讲话,百度推广公司,网站建设管理费一能多少钱前言: 在写一个天气预报模块时,需要一个定位功能,在网上翻来翻去才找着,放在这里留着回顾下,也帮下有需要的人 正文: 一开始我想着直接调用百度地图的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.hyszgw.com/news/45219.html

相关文章:

  • 河南南阳油田网站建设花生壳网站无法登陆
  • php心水主论坛网站制作网页设计想学软件开发报什么专业
  • 2017年网站设计趋势wordpress获取用户等级
  • 网站没内容国家企业官网
  • 主题 外贸网站 模板下载捕鱼游戏源码论坛
  • 学校管理网站源码抖音代运营找客户话术
  • 做网站设计的公司名字颜色搭配的网站
  • 招聘门户网站有哪些做维修家具广告在哪个网站好
  • 网站代码是多少微信小程序如何生成二维码
  • html5 网站开发实战网站域名怎么购买
  • 网站建设中最重要的环节是什么论坛怎样发帖推广
  • 淘宝网页银川seo优化
  • 专门做卫生间效果图的网站接任务做兼职的的网站
  • 天元建设集团有限公司第十一建筑公司seo目标关键词优化
  • 公司建网站多少钱一个做swf网站
  • 外汇直播网站建设开发长沙智能建站方案
  • 网站开发人员职位网站建设修改建议书
  • 会议网站建设方案全网整合营销公司
  • 网站502错误什么原因网站建设项目的费用做什么科目
  • 做网站都需要做什么建一家网站多少钱
  • 网站宣传视频美橙域名查询网站
  • 该如何建设和优化一个网站站长 网站对比
  • 做网站排名优化的公司wordpress 外链统计
  • 建立企业网站的步骤网页设计代码单元格内容怎么居中
  • 海绵城市建设网站贸易网站怎么做
  • 温州seo网站管理html5和html的区别
  • 加盟产品网站建设方案俄语网站都哪些
  • 科技制作网站网站建设合同的注意事项
  • 株洲网站seo优化价格seo在线短视频发布页
  • 官方网站做自适应好还是响应式国内10大设计公司