zoukankan      html  css  js  c++  java
  • play 学习 二: 关于play跨域

    默认, 在满足下面三个条件的情况下,Play框架会做一CSRF(跨站点请求伪造) 的检查:

    • 请求方法不是GET, HEAD 或 OPTIONS.
    • 情求包含Cookie或者Authorization头.
    • play没有配置CORS过滤相信请求

    通过如下配置,可以pass  CSRF检查:

    play.filters.csrf.header.bypassHeaders {
    X-Requested-With = "*"   // X-Requested-With头域表示请求是通过Ajax发的,就会pass CSRF 检查
    Csrf-Token = "nocheck"  // 这个也会pass CSRF检查
    }

    -----------------------------------------------------------------分割线-------------------------------------------------------------------------------

    我遇到的问题是:前端的两个请求, 成功的request 不带cookie, 不成功的带了cookie(相对路径), 而后端对于有cookie的会执行检查。我做了如下尝试:
    play.filters.csrf.header.bypassHeaders {
    X-Requested-With = "*"
    Csrf-Token = "nocheck"
    }

    问题解决。

  • 相关阅读:
    iOS_03_为什么选择ios开发
    iOS_02_什么是ios开发
    iOS_01_什么是ios
    Hadoop之HDFS
    hadoop组件及其作用
    数组
    Scala基础知识(二)
    hadoop安装过程
    Scala基础知识
    建造者模式
  • 原文地址:https://www.cnblogs.com/liufei1983/p/9248749.html
Copyright © 2011-2022 走看看