微信,问题。微信公众平台接口获取用户发送的地理位置xml 平台api百度微信公众平台 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我最近也在做跟你类似功能的一个项目,同样使用微信接口,根据用户向我公众平台发送当前位置信息后搜索当前位置有哪些楼盘(这些楼盘的坐标点事先已经存储在我本地的数据库中)。我是通过微信发过来的Location_X和Location_Y来定位的。这个就是谷歌地图的坐标点,虽然有点偏移,但大概位置差不多。目前我碰到的问题是根据这个中心点如何去搜索周边范围(比如500M)内的楼盘信息,虽然通过去遍历每个楼盘和我这个中心点可以计算出距离,但是效率太低。我通过微信提供的这个XML中的Label地理位置信息来加以提炼,但是为什么每次取到的都是空的? 我如何在微信API中获取经纬度? 这个玩意我想在微信的API文档里肯定有吧?你上面这个返回的XML就是结果吗?那就读XML数据噻,这个不会? 读取xml数据并获取经纬度坐标不难,问题是他这个xml中为什么给的lable字段是空的,不理解 这个功能我自己研究了一下午已经做好了,而且功能已经实现。 这个xml里面的 lable 确实是空的,但是我是用的经纬度来获取当前位置的指定关键词的。 用的事百度地图的API。 百度地图的API不是只能用js脚本来获取的吗?那么微信post过来的时候,你是如何调用百度地图API来执行js的? 不需要执行js,我调用的接口直接在url上加参数,然后获取返回值,将所需数据循环出来即可! 调用的接口的url上加什么参数?通过微信中传过来的xy如何到百度api中获取到想要的数据呢?不是很理解你说的循环是什么循环什么数据,最能能贴下demo看下,谢谢。 我最近也在搞微信的经纬度,也没有办法通过经纬度获得地理位置,soso api也只提供了js版的api大牛写你们是怎么实现的啊? 我也是获取不到lable信息,请问现在问题解决了吗。、 拿到微信传过来的坐标 然后访问百度地图的API 有个参数是pois设置为1会显示附近 同求,大侠们,怎么用js通过微信api获取地理位置啊, 我也遇到这个问题了,lable是null,调用百度API,没有地理位置信息 只有经纬度 不行啊,有没有大神给解答下,楼主的问题解决了没啊,关键词指定的话 就没意思了啊 lable是null你的这个问题如何解决的呢? 提取谷歌坐标转百度坐标的javascript API用于PHP等服务端语言http://blog.csdn.net/longxuu/article/details/10063003 查看新版百度地图API属性,应该有这个属性。 值得注意的是,有图片的商家只是少数,大多数都还没有详细信息。 自己的代码片段以供参考: if (!empty($postStr)){ $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); $fromUsername = $postObj->FromUserName; $toUsername = $postObj->ToUserName; $type=$postObj->MsgType; $customrevent=$postObj->Event; $latitude = $postObj->Location_X; $longitude = $postObj->Location_Y; $keyword = trim($postObj->Content); $time = time(); $textTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[%s]]></MsgType> <Content><![CDATA[%s]]></Content> <FuncFlag>0</FuncFlag> </xml>"; --------------------------------------------------------------------------case "location": $contentStr="你的纬度是{$latitude},你的经度是{$longitude},我已经锁定!准备发射爱国者捣蛋!"; break;有问题可以Q我:30339245 label 标签为空 可能是因为 当你要发送 位置的时候 弹出地图的时候 你未等人家 把你地址读取好之后 就点击了 发送 ,读取位置会比较慢 最好等个 1、 2 分钟 让 他显示出你的具体地址后 再发送 就可以了 我试了好长时间了1、微信的公众平台的主动获得用户地理位置成功率很低(听别人说只GPS所以低);2、微信浏览器屏蔽了html5定位(google提供)的功能;3、微信自己的定位是soso地图,坐标转换啥的、反正他本身也不准、综上所述,我了个大槽、 不需要执行js,我调用的接口直接在url上加参数,然后获取返回值,将所需数据循环出来即可!百度地图拼URL获取地址速度回很慢。 虽然帖子时间有点遥远,百度用的是自己的坐标系,和其他坐标系有点便宜,手机GPS获取的经纬度,也就是4326坐标系,和国内大地2000坐标系差不多,和谷歌是一样,百度提供了坐标系转换公式,直接调研转换公式就可以将经纬度转换成百度的坐标系。 我碰到的问题是,微信上得到的经纬度, 获取位置 与通过百度地图api 获取的位置 不一样 你的问题解决了吗 你好,能把你获取位置的代码分享下吗,我根据微信api写的获取不到。这是我的代码:private function dealLocation($postObj){ $wzx=$postObj->Latitude; $wzy=$postObj->Longitude; $contentStr ="你的经度是{$wzx},纬度是{$wzy},大浦洞已锁定"; $resultStr=$this->transform($postObj,$contentStr); return $resultStr; } 看了你们贴这么多代码 有没有人能贴个完整点的啊 Java代码 谢谢大神们了 返回的数据格式可以这样写:$resultStr ="<xml> <ToUserName><![CDATA[$FromUserName]]></ToUserName> <FromUserName><![CDATA[$ToUserName]]></FromUserName> <CreateTime>$time</CreateTime> <MsgType><![CDATA[text]]></MsgType><Content><![CDATA[$content]]></Content><FuncFlag>0</FuncFlag> </xml> "; php5.4.3找不到memcache模块,怎么解决? 页面值传递问题。 query里执行数据库的字段计算总出现 3.75509e-05符号是怎么回事? 体验Adobe Flash CS3新特性 一个链接的问题 留言板读取出问题了,求指导 Spreadsheet_Excel_Reader存数据库乱码问题 怎么样对付URL隐含转发的收费! ==树结构== php连接mssql 有人用过人人的API吗 require_once用绝对路径问题
这个功能我自己研究了一下午已经做好了,而且功能已经实现。 这个xml里面的 lable 确实是空的,但是我是用的经纬度来获取当前位置的指定关键词的。 用的事百度地图的API。
不需要执行js,我调用的接口直接在url上加参数,然后获取返回值,将所需数据循环出来即可!
大牛写你们是怎么实现的啊?
http://blog.csdn.net/longxuu/article/details/10063003
if (!empty($postStr)){
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$type=$postObj->MsgType;
$customrevent=$postObj->Event;
$latitude = $postObj->Location_X;
$longitude = $postObj->Location_Y;
$keyword = trim($postObj->Content);
$time = time();
$textTpl = "<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<FuncFlag>0</FuncFlag>
</xml>";
--------------------------------------------------------------------------
case "location":
$contentStr="你的纬度是{$latitude},你的经度是{$longitude},我已经锁定!准备发射爱国者捣蛋!";
break;有问题可以Q我:30339245
label 标签为空 可能是因为 当你要发送 位置的时候 弹出地图的时候 你未等人家 把你地址读取好之后 就点击了 发送 ,读取位置会比较慢 最好等个 1、 2 分钟 让 他显示出你的具体地址后 再发送 就可以了
不需要执行js,我调用的接口直接在url上加参数,然后获取返回值,将所需数据循环出来即可!百度地图拼URL获取地址速度回很慢。
你好,能把你获取位置的代码分享下吗,我根据微信api写的获取不到。
这是我的代码:
private function dealLocation($postObj){
$wzx=$postObj->Latitude;
$wzy=$postObj->Longitude;
$contentStr ="你的经度是{$wzx},纬度是{$wzy},大浦洞已锁定";
$resultStr=$this->transform($postObj,$contentStr);
return $resultStr;
}
<ToUserName><![CDATA[$FromUserName]]></ToUserName>
<FromUserName><![CDATA[$ToUserName]]></FromUserName>
<CreateTime>$time</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[$content]]></Content>
<FuncFlag>0</FuncFlag>
</xml> ";