6 javascript ajax geocoding callback
我想通过HTTP功能使用谷歌地理编码将城市名称转换为我的AJAX Web应用程序的经度和纬度.
但是,似乎HTTP地理编码器功能不存在回调函数
http://code.google.com/apis/maps/documentation/geocoding/index.html
是真的,没有回调函数吗?
因为如果这是真的,它实质上意味着当与AJAX一起使用时,通过HTTP api的Google地理编码是无用的,因为JavaScript会引发跨域异常错误.
关于如何在JavaScript中的AJAX Web应用程序中通过HTTP api使用地理编码的任何想法?
注:我不希望使用完全成熟的谷歌地图API,它是大约200KB的下载(即的GClientGeocoder).我想使用它的超快速响应的HTTP api b/c,并且不需要我的网络用户必须下载巨大的全面交互式谷歌地图api.
例如 http://maps.google.com/maps/geo?output=json&sensor=false&key= {API_KEY}&q = {CITY,STATE}&CALLBACK = ????
谢谢
嗯....我认为你必须将 AJAX 回调回你自己的服务器,然后从你的服务器调用 Google 的地理编码。
这就是我进行 AJAX 地理编码的方式,这一切都通过我的 ASP.NET 代码进行。
编辑:
在 ASP.NET Webforms 环境中,我可能会将其实现为轻量级 ASHX 文件,但为了简单起见,这里有一个 ASPX 示例:
public partial class GoogleHandler : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e) {
Response.Write(GetGoogleXML("http://pseudo_googlegeocode?parameter=" + parametersFromQuerystring);
}
}
Run Code Online (Sandbox Code Playgroud)
在上面的示例中,.NET 页面仅传递请求。
但在真实环境中,我宁愿我的 .NET 代码做的不仅仅是传递数据。这样,我可以在将数据发送到客户端之前在服务器上进行错误处理、过滤、验证、业务逻辑。
此外,这还允许更大的抽象。即,我可能会从谷歌地理编码更改为雅虎地理编码。通过这种方式,我只需要更改我的服务逻辑,并让客户端只接收一组通用的坐标/位置数据。
此外,使用该抽象,我实际上可以聚合来自各种地理编码数据源的多个数据。同样,服务器负责聚合,客户端仅接收并显示过滤后的数据。
| 归档时间: |
|
| 查看次数: |
10655 次 |
| 最近记录: |