使用js或java从mysql数据库获取数据,不使用php

vfh0ocws  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(305)

哪种方法是用js、java打开与另一个域上的db的连接的最佳方法。
例如,我使用gtm将数据推送到datalyer,我所拥有的只是前端访问权限,但是我可以访问另一个域上的数据库,当gtm只允许js而不允许php编码时,如何从另一个数据库获取数据到gtm,这样日期就可以是动态的,因为我需要推送的数据来自外部数据库。
提前谢谢

<script>

var connection = new ActiveXObject("ADODB.Connection") ;

var connectionstring="Data Source=<server>;Initial Catalog=<catalog>;User ID=<user>;Password=<password>;Provider=SQLOLEDB";

connection.Open(connectionstring);
var rs = new ActiveXObject("ADODB.Recordset");

rs.Open("SELECT * FROM table", connection);
rs.MoveFirst
while(!rs.eof)
{
 document.write(rs.fields(1));
  rs.movenext;
}

rs.close;
connection.close;

    dataLayer.push({
  'usersigendup': 'some-value',
    'productID2': 'some-value2',
    'productID3': 'some-value3',
 });

 </script>

上面的代码不起作用,但基本上我如何才能实现“某个值”变成db中一个值的结果

h22fl7wq

h22fl7wq1#

gtm没有用于跟踪的服务器端api,因此不能直接发送数据(也不希望将数据库凭据提供给客户端脚本)。
您可以创建一个服务器端脚本,从数据库中获取数据。然后通过返回数据库结果的url使其可用。然后用javascript创建一个自定义html标记,该标记连接到新端点,获取响应并将其解析为变量,然后在跟踪标记中使用。
当端点没有响应时,您需要确保脚本仍然工作(或正确终止)。
SimoAhava在他的一篇老文章中演示了这项技术,唯一的区别是,与使用像WeatherAPI这样的可用Web服务不同,您必须创建自己的服务来返回数据库结果。

相关问题