我可以将 Google API 中的 XML 作为字符串存储在 Javascript 中吗?
Can I store XML from a Google API in Javascript as a string?
在开始我的问题之前:上次我问这个问题时,你们中的一些人发布了解析 XML 的有用链接。但我的问题是首先询问如何将 XML 信息放入字符串变量中。它不是这些链接的副本。
希望我的问题是有道理的。但是我正在尝试存储从 Google 地理编码 API (https://developers.google.com/maps/documentation/geocoding/intro) 中获得的 XML,这样我就可以自动格式化人们在某些字段中输入的地址。
本质上,我正在寻找 Javascript 相当于 MS Excel 中的 =WEBSERVICE([URL])
。
我的想法是检索人们键入的地址字段,将其放入地理编码 URL,将 XML 存储为字符串(这是我遇到问题的步骤),然后将字段设置为从 API.
获得的结果
使用jQuery的简单示例:
var response = $.get('https://maps.googleapis.com/maps/api/geocode/xml?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY');
var text = response.responseText;
$.get
将 return 一个 jqXHR
对象,它公开 responseText
。您可以查看 https://api.jquery.com/jquery.ajax/ 了解更多详情。
注意:以上示例将 return 出错(因为我们没有提供 API 密钥),但响应格式相同。
要真正将 XMLDocument 转换为字符串,您必须使用序列化程序(参见 Convert xml to string with jQuery)。
出于某种原因,其他人的回答对我不起作用。但是使用这里的代码结构确实:How do I get the entire XML string from a XMLDocument returned by jQuery (cross browser)?
我只是将 url
替换为 Google API(并按照建议的答案将 dataType
替换为 XML)。
在开始我的问题之前:上次我问这个问题时,你们中的一些人发布了解析 XML 的有用链接。但我的问题是首先询问如何将 XML 信息放入字符串变量中。它不是这些链接的副本。
希望我的问题是有道理的。但是我正在尝试存储从 Google 地理编码 API (https://developers.google.com/maps/documentation/geocoding/intro) 中获得的 XML,这样我就可以自动格式化人们在某些字段中输入的地址。
本质上,我正在寻找 Javascript 相当于 MS Excel 中的 =WEBSERVICE([URL])
。
我的想法是检索人们键入的地址字段,将其放入地理编码 URL,将 XML 存储为字符串(这是我遇到问题的步骤),然后将字段设置为从 API.
获得的结果使用jQuery的简单示例:
var response = $.get('https://maps.googleapis.com/maps/api/geocode/xml?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY');
var text = response.responseText;
$.get
将 return 一个 jqXHR
对象,它公开 responseText
。您可以查看 https://api.jquery.com/jquery.ajax/ 了解更多详情。
注意:以上示例将 return 出错(因为我们没有提供 API 密钥),但响应格式相同。
要真正将 XMLDocument 转换为字符串,您必须使用序列化程序(参见 Convert xml to string with jQuery)。
出于某种原因,其他人的回答对我不起作用。但是使用这里的代码结构确实:How do I get the entire XML string from a XMLDocument returned by jQuery (cross browser)?
我只是将 url
替换为 Google API(并按照建议的答案将 dataType
替换为 XML)。