2012-08-05 88 views
3

发现它有点奇怪,没有找到这个东西,所以也许我只是在错误的轨道上。fbm&fbsr饼干和无Cookie子域

但无论如何...

我只是设置子存储图像,样式等,即,用于优化的目的,我不想发送到饼干。称它为static.domain.com。我有我自己的饼干工作,根据需要设置他们的域名www.domain.com,但我不知道如何定义Facebook的fbm_和fbsr_ cookies的域集。

这可能吗?或者以其他方式阻止他们被发送到static.domain.com,但正常地将请求传递给www.domain.com?

预先感谢

+0

这是设置这些cookie的Facebook的JavaScript,并且他们尝试设置它们以使它们的“达到“能够识别用户尽可能广泛。我可以想到的唯一方法就是尝试获取这些未设置为子域的cookie,然后将您的应用在您的应用设置中明确指定为www.example.com而不仅仅是example.com(我避难这个虽然试过了。) – CBroe 2012-08-05 02:01:31

+0

Bleh。他们的推理是有道理的,但如果至少有一个选项可以排除子域名,它会很好。事实上,他们已经基本上破坏了人们拥有无Cookie子域名的能力。我查看了Facebook的应用程序设置,并认为我找到了一个修复方法,但将“domain.com”更改为“www.domain.com”只是导致它完全停止工作。噢... – Rikaelus 2012-08-05 03:01:54

+0

如果它“停止工作”,您使用哪个域名来登录 - www.example.com或仅仅是example.com? – CBroe 2012-08-05 03:11:14

回答

4

Cookie是由“应用程序域”在应用程序设置定义的域的一项。我不确定如果您列出多个域名,它的行为如何,但可能由SDK选择最接近当前域名的域名。

因此,如果您将其设置为www.domain.com,Cookie将在此处设置并且不会发送至static.domain.com

也FYI它没有记录,但cookie参数FB.init可以设置为string值,这是域cookie将被设置。 (我不建议在生产中使用official Facebook JS-SDK repository之前用实际的代码更新,表明这是可能的或在文档中陈述的内容)