首页 > 解决方案 > 是否有任何标准 URL 用于检测是否存在强制门户?

问题描述

我正在编写一个应用程序,其中我想检查用户是否连接到接入点,但不允许网络访问(由于存在强制门户)。

以下 URL 是 Microsoft 的测试服务器,如果一切顺利,则返回 HTTP 200 ,内容为“Microsoft Connect Test” http://www.msftconnecttest.com/connecttest.txt

要将状态返回给用户,我想再次检查另一台测试服务器,它会在 HTML 响应中返回一些内容。

Google 有一个测试服务器为“ http://connectivitycheck.gstatic.com/generate_204 ”,但这会给出空的 HTML 响应。

Mozilla 和 Apple 提供了几个服务器,但都在 HTML 响应中返回“SUCCESS”。

为什么我不喜欢在 HTML 正文中仅返回“SUCCESS”的任何测试服务器,因为它不允许我测试内容篡改攻击的场景。

如果您知道任何其他标准服务器来测试强制门户,请回复...

~阿什什

标签: network-programmingcaptivenetworkcaptiveportal

解决方案


我知道这是一个非常古老的问题,但我可能会为其他登陆这里的人提供一些额外的信息。

尽管 Google generate_204 链接似乎什么也没返回,但它实际上返回了 204 状态。如果您的连接上有一个强制门户,您将不会收到 204 回复。

我们在我们的应用程序中使用它来检测强制门户,并且效果很好。我们的 API 上有一个“Hello”端点,它返回 204。


推荐阅读