zoukankan      html  css  js  c++  java
  • Play Framework 2.8.2 学习系列二------ Web基本应用

      采用的是前后端分开开发的方式进行的,但是在登录等特殊地方也是要做一些交互动作

      1、从html页面访问action。

       Form中的action属性可以这样设置,action="@pc.routes.LoginController.loginSys()",其中pc是controller目录下的一个子目录,他的包名为package controllers.pc。要求form的action路由至controllers.pc目录下的LoginController的loginSys,指向很明确。

      2、CSRF设定。在配置中启用了CSRF功能,所以在每次的请求中需要添加一个csrfToken参数。在html页面的body中添加:

      运行后会自动生成一个csrfToken的隐藏区域,只要获取这个token并且在每次的请求中添加进去就可以在csrf过滤器开启的情况下实现get以外的请求

      3、html解析。如果有后端的html代码需要推送到前端显示,正常情况下都会被浏览器解析而不再是正常的html代码。如何解决这个问题呢->@Html(htmlStr),即可展现原生的html信息

      4、访问静态资源。指定一个img可采用这样的方式<img src='@routes.Assets.versioned("images/files/test.png")'/>,但是同时在css中需要添加html页面生成的地址信息,比如background:url(/assets/images/files/test.png) no-repeat #fff; 当前之前的img也可以这样添加目录。添加js库的引用均需如此。在此之前需要在routes中配置静态资源路径“GET /assets/*file controllers.Assets.versioned(path="/public", file: Asset)“

         5、获取js提交的post数据。对于一个control里面的action获取js数据如果通过form提交可以通过DynamicForm获取。如果通过ajax的httprequest可以通过request.queryString("userName")获取。如果是json数据可以直接request.body().asJson()获取

      6、登录控制。在登录时可以通过addingToSession(request,"userName", userName)这样的方式添加,在注销的时候用withNewSession()销毁。在用户存活期间可以在想要验证的时候获取req.session().get("userName"),以验证登录合法性。

  • 相关阅读:
    【Java8新特性】你知道Java8为什么要引入Lambda表达式吗?
    你说你懂计算机网络,那这些你都知道吗
    程序员需要了解的硬核知识之控制硬件
    程序员需要了解的硬核知识之汇编语言(全)
    真的,Kafka 入门一篇文章就够了
    程序员需要了解的硬核知识之汇编语言(一)
    带你涨姿势的认识一下 Kafka 消费者
    程序员需要了解的硬核知识之操作系统和应用
    详解Kafka Producer
    程序员需要了解的硬核知识之操作系统入门
  • 原文地址:https://www.cnblogs.com/ershoushouji/p/13265104.html
Copyright © 2011-2022 走看看