ajax基于php页面请求json数据

2 篇文章 0 订阅

 

在jQuery中封装有$.ajax方法可以直接来调用 

·testjson.html

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<style type="text/css">
		</style>
	</head>
	<body>
		<script src="jquery.min.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript">
			$(function() {
					$.ajax({
						type: "get",
						url: "http://localhost:8080/smarty/test1.php",
						dataType: "json",  
						success: function(data) { 
							console.log(data);						
						},
                        error:function(e){
                            console.log(e);
                        }
					});
			});
		</script>
	</body>
</html>

其中type为提交方式,这里采用get提交 
url,表示的是你获取数据和发送数据的地址,这里用的是我自己写的一个servlet,你也可以换成jsp ,或者txt等格式, 
dataType表示的数据格式,这里是计较的json格式 ,还有其他五种格式

  1. "xml":返回 XML 文档,可用 jQuery 处理。
  2. "html"::返回纯文本 HTML 信息;包含的 script 标签会在插入 dom 时执行。
  3. "script"::返回纯文本JavaScript 代码。不会自动缓存结果,除非设置了 "cache" 参数。注意:在远程请求时(不在同一个域下),所有 POST 请求都将转为 GET 请求。(因为将使用 DOM 的 script标签来加载)
  4. "jsonp": JSONP 格式。使用JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数,经常被用来同主域名下不同二级域名下的跨域请求。
  5. "text": 返回纯文本字符串。

data表示数据的具体内容 
success,表示服务端成功响应 
error表示服务端响应不成功

test.php代码

<?php
    header("Content-Type:text/html;charset=utf-8");
    header("Access-Control-Allow-Origin: *");
    $data =  'var jsons = {"title":"这也是一条测试信息","author":"mjhh","date":"2018-11-14","content":"这也是一条测试信息!!!!!!!!!!!!!!!!!!这也是一条测试信息!!!!!!!!!!!!!!!!!!"}';
    echo $data;
?>

在跨域访问文件时,少了header("Access-Control-Allow-Origin: *");会直接报错“被CORS策略阻止”

Access to XMLHttpRequest at 'http://localhost:8080/smarty/test1.php' from origin 'null' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值