lcx-前端

本文详细讲解了前端开发中的关键知识点,包括AJAX请求方式、参数类型、状态码,JQuery常用选择器,前后端数据交互以及JSON数据传递,解决跨域问题的策略,如何防止表单重复提交,Vue的生命周期、指令、双向绑定及路由跳转。此外,还介绍了GET和POST的区别,jQuery获取当前日期,以及Checkbox事件绑定等实用技巧。
摘要由CSDN通过智能技术生成

1.ajax请求方式、参数类型、状态码?

请求方式

请求方式:Get,Post

 

参数类型

url: 要求为String类型的参数,发送请求的地址。

type: 要求为String类型的参数,请求方式(post或get)默认为get。

timeout: 要求为Number类型的参数,设置请求超时时间(毫秒)。

async要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求。

cache要求为Boolean类型的参数,默认为true(当dataType为script时,默认为false)。

data: 要求为Object或String类型的参数,发送到服务器的数据。

dataType要求为String类型的参数,预期服务器返回的数据类型。

 

         xml:返回XML文档,可用JQuery处理。

        html:返回纯文本HTML信息;

         script:返回纯文本JavaScript代码。不会自动缓存结果。

         json:返回JSON数据。

         jsonp:JSONP格式。

         text:返回纯文本字符串。

 

状态码

200     成功处理了请求,一般情况下都是返回此状态码;

400    服务器不理解请求的语法。

404   服务器找不到请求的网页。

500   (服务器内部错误)  服务器遇到错误,无法完成请求。

502   (错误网关) 服务器作为网关或代理,从上游服务器收到无效响应。

 

2. Jquery常用的选择器?

1.1、ID选择器 #id

 

描述:根据给定的id匹配一个元素, 返回单个元素

 

示例:$("#test") 选取 id 为 test 的元素

 

1.2、类选择器 .class

 

描述:根据给定的类名匹配元素,返回元素集合

 

示例:$(".test") 选取所有class为test的元素

 

1.3、元素选择器 element

 

描述:根据给定的元素名匹配元素,返回元素集合

示例:$("p") 选取所有的

 

元素

1.4、*

描述:匹配所有元素,返回元素集合

示例:$("*") 选取所有的元素

 

3.前后端是如何做数据交互的?前端怎么传给后端json数据?

一、通过表单传递参数

 

前端怎么传给后端json数据?

二、通过ajax传递参数(有post和get写法)

 

前端向后端传递json数据时,需要使用JSON.stringify()将json对象转化为json字符串。

Django后端接收前端传递过来的json数据,不能使用request.POST而是要使用request.body

 

1.第一种:ajax

传给后台的数据通过json封装起来,再用ajax将json传到后台

2、通过form表单的action传值

一般情况下数值在传给后台之前需要校验,可以在form中的onsubmit调用js方法进行校验,当js方法返回值为true时,触发action,当js方法返回值为false时,action不触发。

这样处理的好处在于当用户输入不正确时,不会刷新页面,表单仍然会保留用户之前的输入

JS方法: JSON.stringfiy(demo);

 

4.前端和后台都是如何解决跨域问题的?

一个系统访问另一个系统才会存在跨域,同系统访问不存在跨.
跨域是指跨域名的访问,以下情况都属于跨域:
1.
域名不同: www.jd.com 与 www.taobao.com
2.域名相同,端口不同: www.jd.com:8080 与 www.jd.com:8081
3. 二级域名不同: www.baidu.wenku.com www.baid.tieba.com

如果域名和端口都相同,但是请求路径不同,不属于跨域,如:
www.jd.com/item

www.jd.com/goods
只要域名(ip)和端口号有一样不同,那么都是跨域
http://localhost:8080 前端系统 发送Ajax取后端系统获取数据
http://localhost:80 后端系统

跨域不一定会有跨域问题。

因为跨域问题是浏览器对于ajax请求的一种安全限制:

一个页面发起的ajax请求,只能是于当前页同域名的路径,这能有效的阻止跨站攻击。
因此:跨域问题是针对ajax的一种限制。

 

- 1.Jsonp-- json变种

  最早的解决方案,利用动态去填充script标签可以跨域的原理实现。

      <sccipt src=”http:/wwww/ssss”>

限制:

​      需要服务的支持

​      只能发起GET请求

 

- 2.nginx反向代理(部署)

  思路是:利用nginx反向代理把跨域变为不跨域,支持各种请求方式

  原理是:前端的请求访问后端是跨域,nginx代理会让他的请求转回去访问自己,就不存在跨域问题了,而nginx会代理前端的请求发送一个和后端域名端口一致的请求,再返回数据,相当于避免了前端跨域的直接请求。

缺点:需要在nginx进行额外配置,语义不清晰 –

 

- 3.CORS(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值