引入js文件
<script type="text/javascript" src="http://ajax.cdnjs.com/ajax/libs/json2/20110223/json2.js"></script>
js部分
$(function(){
$.getJSON("http://query.yahooapis.com/v1/public/yql", {
q: "select * from json where url=\"http://m.weather.com.cn/data/101010100.html\"",
format: "json"
}, function(data) {
if (data.query.results) {
console.log(JSON.stringify(data.query.results));
} else {
console.log('no such code: ' + code);
}
});
http://m.weather.com.cn/data/101010100.html 是访问的一个天气数据,根据需要替换成自己的目标接口。
上例用到JSON.stringify()把得到的对象解析成了字符串
还有一个JSON.parse()用于从一个字符串中解析出json对象
- 用JSON.parse()时单引号写在{}外,每个属性名都必须用双引号,否则会抛出异常。
测试几次后发现:返回的data不直接等于接口里面的数据,需要向下到data.query.results才能得到比较接近原数据的对象,不过也有情况还要向下找。需要多console.log()检查。