Au cours du processus de développement, nous avons rencontré le besoin d'afficher les produits dans différentes régions en fonction de la situation géographique de l'utilisateur.
WeChat est utilisé ici : la fonction d'obtention de la localisation géographique de l'utilisateur (rapportée toutes les 5 secondes ou lors de la saisie d'une réponse), nous la convertissons en une adresse réelle en fonction de la longitude et de la latitude poussées par WeChat, qui est utilisé ici Il s'agit de l'API Baidu Map (si vous souhaitez l'utiliser, postulez d'abord pour Baidu ak).
PS : Cette fonction de WeChat est très instable, elle n'est pas fiable et elle ne pousse souvent pas. . . (Le positionnement manuel a été ajouté plus tard, et le composant de positionnement Web Baidu Map est plutôt bon, pas une publicité ! 0.0)
#region 根据经纬度 获取地址信息 BaiduApi /// <summary> /// 根据经纬度 获取 地址信息 /// </summary> /// <param name="lat">经度</param> /// <param name="lng">纬度</param> /// <returns></returns> public static BaiDuGeoCoding GeoCoder(string lat, string lng) { string url = string.Format(WeiXinConst.Baidu_GeoCoding_ApiUrl, lat, lng); var model = HttpClientHelper.GetResponse<BaiDuGeoCoding>(url); return model; } #endregion
BaiduGeoCoding est un objet encapsulé pour les résultats correspondants de l'API :
public class BaiDuGeoCoding { public int Status { get; set; } public Result Result { get; set; } } public class Result { public Location Location { get; set; } public string Formatted_Address { get; set; } public string Business { get; set; } public AddressComponent AddressComponent { get; set; } public string CityCode { get; set; } } public class AddressComponent { /// <summary> /// 省份 /// </summary> public string Province { get; set; } /// <summary> /// 城市名 /// </summary> public string City { get; set; } /// <summary> /// 区县名 /// </summary> public string District { get; set; } /// <summary> /// 街道名 /// </summary> public string Street { get; set; } public string Street_number { get; set; } } public class Location { public string Lng { get; set; } public string Lat { get; set; } }
Appel :
//需配置 WeiXineConst的BaiduAk string lat = "31.1430"; //经度 string lng = "121.2943";// 纬度 var model = WeiXinHelper.GeoCoder(lat, lng);
Pour plus de développement C# WeChat : obtenez l'adresse en fonction des articles liés à la longitude et à la latitude, veuillez faire attention au site Web PHP chinois !