前后端数据交互ajax,涉及跨域问题,promise,fetch,axios(常用)(二)

与上一篇文章连接。

四、数据处理

从上面 jquery 的 ajax 来看,ajax 并不是难题,其实需要我们花心思的是数据处理,你拿到数据,想执行什么,想让数据怎么展示,就需要前端好好处理。
数据处理是很重要的部分,各种遍历,各种取值,不要出错。

五、跨域

跨域:当你访问一个网址(不是你本地网址 如:localhost),你不能从当前域,访问别人的域。
为什么会有跨域问题?因为安全问题。仔细想想,没有跨域,任意一个网站都能访问你自己的数据,你会不会被气死。

代表域相同:协议、(域名)IP、 端口 三者都相同代表域相同,不用跨域。其他情况都需要跨域。

如何解决跨域?
方案一:让对应访问的那个域给你开放一个请求头
方案二:转接,首先访问自己同域的后端,让自己的后端去发起请求(后端与后端没有跨域)
方案三:某些特定格式的数据,可以使用 jsonp 的形式。

七、promise

axios,fetch会用到promise

函数:res/rej
pending 进行中
resolve 成功
reject 失败

promise的意义:将一个左右纵深的结构(回调地狱),变成上下结构。

//没有使用promise
//隔一秒打印一个数字(异步),代码写的越来越深(回调地狱,不利于维护)
setTimeout(()=>{
   
	console.log("1");
	setTimeout(()=>{
   
		console.log("2");
		setTimeout(()=>{
   
			console.log("3");
			setTimeout(()=>{
   
				console.log("4");
			},1000);
		},1000);
	},1000);
},1000);

使用 promise 来完成:


new promise(res=>
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值