Node.js请求将使用Android 5.0+发送两次

时间:2015-12-02 21:59:45

标签: android ios node.js websocket

我有一个节点/ express / socket.io应用程序。当我在Android 4和之前运行应用程序时,它运行正常。但是,对于android 5.0+及更高版本,每次我的应用加载并执行其初始路由(/)时,它都会发送两次路由功能。第二次执行时,请求正文中没有任何内容,导致应用程序出错。

app.post('/', someFunction);

我已经记录了这个函数req.url并注意到它正在为android 5.0+点击someFunction两次,但之前的任何内容只能点击一次并正常执行。

有没有人想过为什么会在新版本的Android上造成这种情况?而不是其他人?另外,这适用于iOS。

1 个答案:

答案 0 :(得分:0)

问题与sockets.io无关。它与新的Android OS Web视图如何处理某些JS有关。在与该路线相关的EJS模板中,我有一个

    window.location.reload();

这适用于iOS和较旧的Android操作系统,但新版本并不喜欢它。我能够切换到:

window.location.href = window.location.href;

这似乎只是花花公子。