百度天气api初体验

正在学习json和jquery ajax,想找个api练练手。就拿百度免费的api来练练手。

首先需要在本地搭建一个服务器,这里选择XAMPP(无脑搭建本地测试服务器,前端开发人员的测试神器),然后开启里面的sql,apache等服务


本地环境搭建好以后就可以开始写代码了,php代码就不用自己写了,百度已经给你写好了,只需要把自己的apikey加到里面就行了,

只管重要的一点需要把最后一行的改为

要不然返回的值就不是json格式了,说起来有些绕口还是看看我修改后的php代码吧

<?php
    $ch = curl_init();
    $city=$_GET['cityname'];
    $url = 'http://apis.baidu.com/apistore/weatherservice/cityname?cityname='.$city;
    $header = array(
        'apikey: 5ff29f936be097a8ba5734a5c45457fe',
    );
    // 添加apikey到header
    curl_setopt($ch, CURLOPT_HTTPHEADER  , $header);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    // 执行HTTP请求
    curl_setopt($ch , CURLOPT_URL , $url);
    $res = curl_exec($ch);

    // var_dump(json_decode($res));
    echo $res;
?>
然后是前端页面

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
<label>请输入城市<input type="text" id="city"></label>
<div id="weather">天气情况</div>
	<script src="jquery-1.11.3.min.js"></script>
	<script>
	$(document).ready(function() {
		$("#city").blur(function() {
			var city=$(this).val();
			if (city) {
				$.get('data.php',{cityname:city}, function(data) {
					var json=eval("("+data+")");
					$("#weather").html(json.retData.weather);
				});
			};
		});
	});
	</script>
</body>
</html>
这里只是调用其中的天气信息,其它信息的调用类似。

最后总结一下:

对于一个前端开发人员来说如果能了解一些php那是最好,或者和php开发人员一起学习,不然像这些关于前后台数据交互的东西真的很难搞懂,不得不说自己琢磨了很久,也上网搜了很多资料,然而还是不行,最后请教后台的大神他告诉我把php最后那一行代码改为echo $res;才调用成功。

万事开头难,之后的学习要更加努力了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值