我们正在开发一款代表我们的用户向 Facebook 发帖的应用程序。在这些帖子中,我们希望放置指向外部(非 Facebook)网站的链接。
查看浏览器(通常是 Chrome)状态栏中的链接,显示正确的 URL。然而,Facebook 似乎将实际点击的链接包装成一些额外的花里胡哨。通常,这可以正常工作。
但是,有时候,这种 URL 包装最终会将点击发送到如下 URL:
http: //spywaresite.info/0/go.php?sid=2
(添加空间使其不可浏览!)生成 Chrome 的严重警告消息:
这种情况在 Chrome 上偶尔会发生,但在 iPhone 上的 iOS 浏览器中更常见。
有没有人知道如何处理这个问题?
编辑
比如我们放在链接中的url是
但实际被点击的 URL 是:
页面中似乎有一些 JavaScript 优点可以解读该页面并且通常正确重定向。
EDIT2
上面的链接放在下面截图中图片和图片右侧的蓝色文本上。
将鼠标悬停在浏览器中的链接(或图像)上会显示正确的链接。右键单击链接并选择“复制链接地址”可获得上面的 fbcdn.net 链接(或类似链接)。实际上,单击该链接似乎将 fbcdn.net 链接的某些 JavaScript 处理触发到正确的链接中……但有时该处理会失败。
最佳答案
我不是 100% 确定你在这里问什么,但我会告诉你我所知道的:- 你指的是 Facebook 上的这个屏幕吗?
(或者更确切地说,不允许点击的那个屏幕的变体?)
- 如果您手动将用户发送到 facebook.com/l.php?u=something,他们将始终看到该消息 - 这是一种防止打开重定向器的措施
- 如果您的用户提交此类链接,包括 l.php 链接,您需要提取目标 URL(在“u”参数中)
- 如果您看到 l.php URL 从 API 返回,这可能是一个错误。
如果点击facebook.com 上的链接最终出现在屏幕上,这是因为 facebook 检测到该链接可疑(例如,对于 URL 重定向器网站 - 屏幕将允许点击但首先警告用户)或恶意/垃圾邮件(不允许点击)
在您的应用程序中,您将无法发布指向后者的链接(会返回一个错误,提示 URL 被阻止),而前者有时可能会抛出一个验证码(如果您使用的是 Feed 对话框,这应该对应用程序代码透明,用户将输入验证码,对话框将正常返回)
如果这不是您要问的,请澄清,我会更新我的答案
关于iphone - URL 重定向到 spy 软件站点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10555331/