如,http://www.xx.com/a.php 包含一个了 b.js,b.js 里面有 ajax 请求:
$.ajax({
url : "http://www.yy.com/c.php?",
dataType : "jsonp",
......
在在 yy.com 域名下的 c.php 中如何判断来源是 www.xx.com ?
如,http://www.xx.com/a.php 包含一个了 b.js,b.js 里面有 ajax 请求:
$.ajax({
url : "http://www.yy.com/c.php?",
dataType : "jsonp",
......
在在 yy.com 域名下的 c.php 中如何判断来源是 www.xx.com ?
|
lsidoApr 22, 2018 via iPhone
1
获取 referer
|
|
KKKKKKApr 22, 2018 via iPhone
3
Cors 了解一下
|
|
qinruiApr 22, 2018 via iPhone
4
跨域能 ajax 么?
|
|
xiaomeApr 22, 2018
6
判断来源地址,好像没办法保证绝对准确;都是可以伪造的内容。
如果你是想防止别人改内容请用 CSRF,如果是想防止别人请求你的接口使用一个可靠 token 即可 |
|
580a388da131Apr 22, 2018
7
页面跳转才有 HTTP_REFERER,直接打开、Javascript、Refresh、Header 没有 HTTP_REFERER。
|
|
580a388da131Apr 22, 2018
8
HTTP_REFERER 做个防盗链就好,不要做安全检查,可以随便改的。
给接口加个验证。 |
|
leven87Apr 22, 2018
9
可以在浏览器里面看下 ajax 请求中 eferer 字段的值。如果没有采用其他方法判断。
|
|
leven87Apr 22, 2018
10
referer
|
|
wsly47Apr 22, 2018 via iPhone
11
$_SERVER['HTTP_REFERER']
|
|
12
|
|
wwwicbdApr 22, 2018
13
如果是 CSRF 防护的话, 推荐使用身份验证 token,在 server 检查 token 的合法性。
rails 做的就很好,默认都支持好了,可以参考 https://ruby-china.org/topics/35199 |
|
14
从 http header 里面哪 refer 去判断就行.
不过,为什么要判断呢? 客户端所有的参数都是可以伪造的,是不可信的. 判断的意义不大,自己骗自己而已. CSRF 一般是用 token 去解决,详情请搜索 JWT. |