当我用 js 做 ajax 请求时,我得到 'Referrer Policy:no-referrer-when-downgrade'

When i am doing ajax request with js i am getting 'Referrer Policy:no-referrer-when-downgrade'

我正在尝试发送 https://myownserver.com/page.php to https://myownserver.com/page2.php,我收到:Referrer Policy:no-referrer-when-downgrade。这是使用 POST 请求,使用 jquery 和 ajax。这是我的代码:

$('.dSettings').click(function() {
    $.post('https://myownserver/page2.php', {bookid: '<?= $book['BookID']; ?>', userid: '<?= $_SESSION['Login']['UserID']; ?>', del: 'delete'}, function (data) {
        // do something with the data
    });
});

问题是我可以从 GET 请求打开 page2.php 并使用 PostMan 我可以毫无问题地发送 POST 请求。我真的不明白问题出在哪里。任何帮助将不胜感激!

编辑:如果有人需要此信息,我正在使用 Google Chrome。 我的请求 Headers 是:

Provisional headers are shown
Accept:*/*
Content-Type:application/x-www-form-urlencoded; charset=UTF-8
Origin:https://myownserver.com
Referer:https://myownserver.com/page.php
User-Agent:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36
X-Requested-With:XMLHttpRequest

EDIT2:我必须说我还有 2 个 ajax 请求同一个 page2.php,它们都正常工作,都返回:Referrer Policy:no-referrer-when-downgrade,还有 Status Code: 200那个不工作的状态代码:(canceled)

EDIT3:触发 ajax 请求的 html 代码的一部分 <a href="" class="dSettings">Do something, go somewhere</a>

请尝试在代码的头部添加

<meta name="referrer" content="no-referrer" />

https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy

This is the user agent's default behavior if no policy is specified. The origin is sent as a referrer when the protocol security level stays the same (HTTPS->HTTPS), but isn't sent to a less secure destination (HTTPS->HTTP).

你们使用相同的协议吗?

我发现了我的错误,非常愚蠢。 问题是我在用户单击然后执行 ajax 请求时使用 a 标记,但问题是我写了 href='' * *a 标签内的空 href,这就是为什么一切都混淆了。** 非常愚蠢的错误,我希望这会帮助其他人犯了同样的错误,但老实说我不相信有人其他人也会犯同样的错误,哈哈 :D 谢谢大家的回答!

修复很简单,只需将其更改为 button 标签或在 a 标签内放入 # 例如,但我更喜欢自己使用按钮标签进行更改.