Tawk.to(免费实时聊天脚本)产生 400 错误请求错误

问题描述 投票:0回答:3

我安装了 tawk.to 的免费实时聊天。问题(除了他们没有对此脚本的客户支持之外)是 - 当它连接到 tawk.to 服务器时,它会产生“400 Bad Request”错误。我将以下代码添加到 .htaccess 以允许不同的来源,但它们不起作用 - 400 错误仍然出现。我不知道还应该做什么。

我在 .htaccess 中尝试了这些但没有成功:

SetEnvIf Origin "^(.*\.tawk\.to)$" ORIGIN_SUB_DOMAIN=$1
Header set Access-Control-Allow-Origin "%{ORIGIN_SUB_DOMAIN}e" env=ORIGIN_SUB_DOMAIN

Access-Control-Allow-Origin: *.tawk.to

响应标头(假设我将此脚本放在 Examples.com 上):

Accepttext/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Encodinggzip, deflate, brAccept-Languageen-US,en;q=0.5Cache-Controlno-cacheConnectionkeep-alive, UpgradeCookie__tawkuuid=e::tawk.to::CZ4miEdTw+LJy27l6cezd/vgJ1Go/uVCmU/4mrr+WIe5uNur3LjRp6TAhWSTCS83::2; __cfduid=d8cf244362c2ead0f846b52cd84058bd31488522157DNT1

Host vs51.tawk.to

Origin https://EXAMPLE.com

Pragmano-cacheSec-WebSocket-Extensionspermessage-deflateSec-WebSocket-KeyBPkRsxjD+iWVmfb3LV8zpA==Sec-WebSocket-Version13UpgradewebsocketUser-AgentMozilla/5.0 (Windows NT 10.0; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0

错误响应:

GET https://vs51.tawk.to/s/ [HTTP/1.1 400 Bad Request 162ms]

这是来自 tawk.to 的 Javascript 示例(注意它包含 'crossorigin"* 属性,但它仍然会产生错误):

<!--Start of Tawkto (example)-->
<script>
var Tawk_API=Tawk_API||{}, Tawk_LoadStart=new Date();
(function(){
var s1=document.createElement("script"),s0=document.getElementsByTagName("script")[0];
s1.async=true;
s1.src='https://embed.tawk.to/0111111111/default';
s1.charset='UTF-8';
s1.setAttribute('crossorigin','*');
s0.parentNode.insertBefore(s1,s0);
})();
</script>
<!--End of Tawkto-->
javascript ajax .htaccess header tawk.to
3个回答
3
投票

更新 - 联系 [email protected] 无效(无回复)。但我做了更多研究 - 我发现一些使用 tawk.to 聊天的网站,并且 400 Bad Request 错误也出现在这些网站上..所以它一定是 tawk.to 脚本固有的/有缺陷的东西,目前尚未解决,并且他们的所有客户都受到影响。


1
投票

您似乎在 tawkto 帐户小部件中屏蔽了特定国家/地区。请尝试在您的小部件上禁用国家/地区屏蔽。它对我有用。


0
投票

有同样的问题,但我已经解决了。 您需要考虑以下事项:

  • 您需要在调用时提供用户 ID
  • 哈希值应该是 userId 和 Api Key 的小写字母

这是一个工作示例代码:(请注意,这不是可运行的代码,您需要添加自己的变量才能使其工作,但我现在可以让我的用户登录)

var Tawk_API = {
    onLoad: function () {
        window.Tawk_API.login({
            hash: '{{Put your Hash here}}',
            name: '{{ User Name}}',
            email: '{{ User Email }}',
            userId: '{{ User ID }}'
        }, function (error) {
            //do something if there's an error
        });
    }
};
var Tawk_LoadStart = new Date();
(function () {
    var s1 = document.createElement("script"), s0 = document.getElementsByTagName("script")[0];
    s1.async = true;
    s1.src = '{{ Put your Chat Link here }}';
    s1.charset = 'UTF-8';
    s1.setAttribute('crossorigin', '*');
    s0.parentNode.insertBefore(s1, s0);
})();

© www.soinside.com 2019 - 2024. All rights reserved.