Javascript 第三方脚本设置第一方cookie

Javascript 第三方脚本设置第一方cookie,javascript,cookies,browser,Javascript,Cookies,Browser,我正在通过Google Tag Manager中的标签加载第三方js文件/脚本 此脚本需要从其自己的域设置cookie,但是所有cookie都被设置为来自主机域的第一方,这意味着它们不会被传输到服务器 我还在开发第三方脚本,因此可以直接访问该脚本,目前该脚本中用于编写cookie的代码基于: const host = (window && window.location && window.location.hostname) || ''; const parts

我正在通过Google Tag Manager中的标签加载第三方js文件/脚本

此脚本需要从其自己的域设置cookie,但是所有cookie都被设置为来自主机域的第一方,这意味着它们不会被传输到服务器

我还在开发第三方脚本,因此可以直接访问该脚本,目前该脚本中用于编写cookie的代码基于:

const host = (window && window.location && window.location.hostname) || '';
const parts = host.split('.');
const COOKIE_DOMAIN = parts.length > 1 ? `;domain=.${parts.slice(-2).join('.')}` : '';
我认为这可能会从源站获取cookies,但会从主机设置cookies

我试图将COOKIE_域更改并硬编码到我的服务器地址,但这似乎不起作用,即没有设置COOKIE

编辑:从标题中删除对标记管理器的引用,因为它不太相关


更新:所以当我从第三方服务器加载脚本标签时,它基本上变成了第一方——这使得从原始域设置cookie变得很困难

页面中运行的JavaScript无法为不同的域设置cookie。document.cookie是指当前页面的cookie


如果要为其他域设置Cookie,则必须使用HTTP头,例如当远程域提供.js文件时。

页面中运行的JavaScript无法为其他域设置Cookie。document.cookie是指当前页面的cookie


如果要为其他域设置Cookie,则必须使用HTTP头进行设置,例如,当远程域提供.js文件时。

刚刚找到此答案,但无论如何,谢谢!我正在使用fetch从本地主机应用程序调用我自己的服务器,服务器使用设置的Cookie头进行响应,但未设置任何内容。刚刚找到此答案,但无论如何,谢谢!我正在使用fetch从本地主机应用程序调用我自己的服务器,服务器使用设置的Cookie头进行响应,但未设置任何内容。。