403禁止在获取帖子请求时使用,但仅限某些Android浏览器

时间:2019-07-13 17:04:45

标签: android node.js express fetch cloudflare

使用从Android默认浏览器获取数据时,我得到不同的结果(204和403)。

  • 在express上配置了router.post(/ page)
  • Express使用头盔
  • 浏览器发送了whatwg-fetch发布请求
  • 两个应用程序在具有不同域(stage.domain.com和domain.com)的同一台计算机上运行,​​它们具有相同的nginx配置和.env节点(都具有NODE_ENV = production)
  • 两个环境都使用cloudflare

在stage.domain.com环境中,我总是得到204->良好

在domain.com环境中,几乎所有Android默认浏览器都得到403。 更多:使用某些Android浏览器(SamsungBrowser / 9.4),我会得到204->好,但仅适用于Beta版和隐身模式。

我确实尝试设置了User-Agent标头,但是它被移动浏览器覆盖。 我也曾尝试将“凭据”参数更改为“相同来源”,但它中断了其他更多请求。

无论如何,正如我所写的:这始终在stage.domain.com下工作

这是我的要求:

fetch(url, {
  method: 'POST',
  credentials: 'include',
  headers: {
    'Content-Type':'application/json',
    'Accept':'application/json',
    'Cache': 'no-cache',
    'X-CSRF-Token': formData._csrf
  },
  body: JSON.stringify(formData)
}).then(function (response) {...

我对此403感到疯狂。了解三星浏览器在标准/隐身/测试版之间有哪些变化可能会有所帮助。

这可能是Chromium的问题,但是那为什么要在stage.domain.com上运行呢?

谢谢您的回复:)

0 个答案:

没有答案