当前位置: 首页 > news >正文

通用搭建网站教程seo策划

通用搭建网站教程,seo策划,齐鲁人才网最新招聘网,做单本小说网站怎么样现在,在网页中通过超链接,表单就可以向后端发送请求,后端也可以正常响应内容。 以前通过表单访问后端的请求方式称为同步请求 同步请求 当网页与后端交互时,前端不能再进行其他操作 服务器端响应回来的内容,会把整个浏…

现在,在网页中通过超链接,表单就可以向后端发送请求,后端也可以正常响应内容。

以前通过表单访问后端的请求方式称为同步请求

同步请求

        当网页与后端交互时,前端不能再进行其他操作

        服务器端响应回来的内容,会把整个浏览器的内容覆盖掉

        这种请求方式在前后端交互时,就不太友好了

        现在的前后端交互请求,都是使用的是异步请求

举例说明:

前端注册网页(实现同步请求):

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><script>function checkAccount(account){//同步请求,已经被抛弃了location.href = "http://127.0.0.1:8088/dormServer/register?account="+account;}function relogin(){location.href = "http://127.0.0.1:8848/webtest/login.html";}</script></head><body><form method="post">账号:<input type="text" name="account" value="" onblur="checkAccount(this.value)"/> <span id="msgid"></span><br/>密码:<input type="password" name="password" value=""/> <br/><input type="button" value="提交" onclick="relogin()"/></form></body>
</html>

        在注册界面输入好账号(已存在)后:

        

        当鼠标焦点不在账号栏时:

页面直接被响应到的信息覆盖了,后续操作无法进行。所以同步请求就被无情抛弃了~

异步请求

    同时可以做多件事情(前端与服务器交互时,不影响前端网页其他操作)

        使用js中提供的XMLHttpRequest对象实现发送异步请求,和接收服务器响应

        异步请求时,会出现跨域访问问题:浏览器默认不允许js对象接收来自其他服务器响应的内容。

举例说明:

        将前端网页的方法中将异步代码实现:

function checkAccount(account){//异步请求,使用js对象发送请求var httpobj = new XMLHttpRequest();//封装请求地址和数据httpobj.open("get","http://127.0.0.1:8088/dormServer/register?account="+account,true);//发送请求httpobj.send();//接收响应httpobj.onreadystatechange = function(){//httpobj.responseText;  获得到响应的内容document.getElementById("msgid").innerHTML = httpobj.responseText;}}

在注册界面输入好账号(已存在)后:

当鼠标焦点不在账号栏时,从后端响应回来的信息就会立刻附在账号栏后反馈给用户。

        但如果有很多种需要实时为用户反馈信息的话,这种异步请求的实现代码就非常繁琐,在多个前端网页也显得非常冗余。

        所以就有了axios框架去封装异步请求的代码,减少了代码的冗余。

axios

    axios 是一个HTTP 的网络请求库.

       <!-- 导入axios框架 -->
        <script src="js/axios.min.js"></script>

        然后注册网页的前端方法中的异步请求就会变成

function checkAccount(account){//axios框架对异步请求进行封装axios.get("http://127.0.0.1:8088/dormServer/register?account="+account).then((resp)=>{console.log(resp);document.getElementById("msgid").innerHTML = resp.data;//resp.data取出后端响应的内容});}

        极大减少了代码的数量,增加了代码的观赏性。

跨域问题

不同服务之间进行访问

只要请求协议,域名,端口其中一项不同,就属于跨域访问

在后端过滤器中响应时,告知前端本次响应是安全的,允许跨域访问

跨域问题是一个前端问题,也可以在后端解决,也可以在前端解决

        配置跨域过滤器

public class CorsFilter implements Filter {public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)throws IOException, ServletException {HttpServletResponse httpResponse = (HttpServletResponse) servletResponse;HttpServletRequest httpRequest = (HttpServletRequest) servletRequest;//允许携带Cookie时不能设置为* 否则前端报错httpResponse.setHeader("Access-Control-Allow-Origin", httpRequest.getHeader("origin"));//"origin"允许所有请求跨域,前期都是自己的浏览器访问自己的服务器,也可以使用回环地址httpResponse.setHeader("Access-Control-Allow-Methods", "*");//允许跨域的请求方法GET, POST, HEAD 等httpResponse.setHeader("Access-Control-Allow-Headers", "*");//允许跨域的请求头httpResponse.setHeader("Access-Control-Allow-Credentials", "true");//是否携带cookiefilterChain.doFilter(servletRequest, servletResponse);}
}

 在web.xml文件中配置注册跨域过滤器

<!--配置允许跨域过滤器--><filter><filter-name>corsfilter</filter-name><filter-class>com.ffyc.dormServer.filter.CorsFilter</filter-class></filter><filter-mapping><filter-name>corsfilter</filter-name><url-pattern>/*</url-pattern></filter-mapping>

json

        json javaScript object Notation javaScript对象表示法

        两种不同的语言之间如何进行数据交互(例如C语言程序 与 java程序之间要进行数据交互)

        json是一种公认的js识别的对象表示法,对于java而言就是一种特定格式的字符串

        对象:{键:值,键:值} 例如:{name:jim,age:20} 集合:[{键:值,键:值},{键:值,键:值}]

模拟json转换数据格式

        1、写一个SearchServlet类

public class SearchServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {String name = req.getParameter("name");//模拟从数据库根据名字查询学生所有信息,然后叫数据封装到一个学生对象中Student student = new Student();student.setNum(101);student.setName(name);student.setGender("男");student.setAge(20);PrintWriter printWriter = resp.getWriter();ObjectMapper objectMapper = new ObjectMapper();String jsonstr = objectMapper.writeValueAsString(student);printWriter.print(jsonstr);//打印响应一个学生对象}

        2、在web.xml文件中配置 SearchServlet

<servlet><servlet-name>search</servlet-name><servlet-class>com.ffyc.dormServer.web.SearchServlet</servlet-class></servlet><servlet-mapping><servlet-name>search</servlet-name><url-pattern>/search</url-pattern></servlet-mapping>

        在前端写一个search.html

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><!-- 导入axios框架 --><script src="js/axios.min.js"></script><script>function search(){var name = document.getElementById("nameid").value;axios.get("http://127.0.0.1:8088/dormServer/search?name="+name).then((resp)=>{if(resp.data.code == 200){console.log(resp.data);alert(resp.data.massage);document.getElementById("numid").innerHTML = resp.data.data.num;document.getElementById("nameid1").innerHTML = resp.data.data.name;document.getElementById("genderid").innerHTML = resp.data.data.gender;document.getElementById("ageid").innerHTML = resp.data.data.age;}else if(resp.data.code == 500){alert(resp.data.massage);}});}</script></head><body><input type="text" id="nameid"/><input type="button" value="搜索" onclick="search()"/><div>学号:<span id="numid"></span>姓名:<span id="nameid1"></span>性别:<span id="genderid"></span>年龄:<span id="ageid"></span></div></body>
</html>

测试json:

    打开search网页

    输入张三后,后端的json就将从数据库得到的信息,转换成json的数据格式响应回前端并显示上去

http://www.dinnco.com/news/27106.html

相关文章:

  • 重庆网上房地产官网查询seo每日工作
  • 宝安网站设计公司baiduseoguide
  • 做网站简约学校网站常州网络推广哪家好
  • 郑州网站建设网络推广seo招聘
  • 网站 引导页 设计如何被百度收录
  • 建设返利网站免费推广网站大全下载
  • 网站建设7个基福州百度快速优化排名
  • 亚马逊网站怎么做推广舆情优化公司
  • 金阊企业建设网站公司谷歌引擎搜索
  • 合肥市网站建设 小程序浙江seo公司
  • jsp网站怎么做沧浪seo网站优化软件
  • dw怎么做网站轮播图网络营销未来有哪些发展趋势
  • 广州微网站建设哪家好聊城seo整站优化报价
  • 做英文网站 是每个单词首字母大写 还是每段落首字母大写百度的网址
  • 道里网站运营培训企业网站seo优化
  • wordpress 支付下载绍兴seo管理
  • 福州有网站建设的公司网站运营怎么做
  • 最全的游戏网站天津seo排名
  • 谷歌seo网站推广百度推广服务费一年多少钱
  • wordpress 网站加密seo网站快速排名外包
  • 最权威的做网站的公司哪家好电商seo
  • 高端营销型网站制作关键词优化顾问
  • 做卖东西的网站自己开网站怎么开
  • 网站建设日程表模板深圳网站建设优化
  • 一般做网站用什么字体收录提交入口网址
  • 网站建设加盟模式一般网络推广应该怎么做
  • wordpress怎么切换编辑器廊坊优化外包
  • nas 做网站服务器114黄页
  • 国内大型免费网站建设关键词排名工具有哪些
  • 做丰胸网站网络营销课程去哪里学