由于某种原因,移动身份验证检测停止工作。当我访问页面上包含表单的位置时,表单应调用(通过 ajax)以获取其他信息以填充字段,服务器将根据用户身份验证返回。它运行良好九个月,但停止适用于移动设备,但它仍然适用于桌面浏览器访问。移动和桌面使用完全相同的访问路由,参数,网址,视图功能...万事。当我查找请求时,我注意到的一个区别(在这个问题上大约 8 小时后)。META,是桌面发送cookie信息,移动不发送。但是,Cookie 在移动和桌面浏览器上启用。我用Chrome移动设备和移动设备上的(新安装的)Firefox对此进行了测试,结果完全相同。
这怎么可能?为什么在桌面上初始化时表单会发送 cookie 信息,而在移动设备上初始化时不会发送?
这是这个问题的先前版本(在我注意到cookie差异并认为这是一个api问题之前编写的),其中包含我认为与特定问题无关的技术细节,即相同的功能在移动设备和桌面上的行为有何不同。
编辑:我真的不知道要显示什么代码,但可能ajax请求可能是相关的。我真的迷失在这里。这是我用来加载表单首字母缩写的 react-js 服务,它是从移动设备发送时没有 cookie 信息的服务,如果从桌面设备发送到服务器,则带有 cookie。我不知道在过去的九个月里没有添加任何内容或更改过它,它总是像这样工作:
loadFormInitials = (typ,genderRelevant,auth) => {
$.ajax({
url: UserConstants.BASE_URL+'elements/?item=setup&auth='+auth,
method: 'GET',
dataType: 'json',
success: (result) => {
var data = JSON.parse(result.initial_data);
FormActions.loadFormInitialsAction(data,typ,genderRelevant);
});
}
移动公司有时会使用其繁重的缓存来更改HTTP请求。 您可能想再次尝试HTTPS请求,但不确定它是否会修复。