从数据库中拉取跨域数据

Posted

技术标签:

【中文标题】从数据库中拉取跨域数据【英文标题】:Cross domain data pulling from database 【发布时间】:2018-02-21 18:25:34 【问题描述】:

我有一个网站,在 www.domain1.com 域的数据库 (phpmyadmin) 中有一些数据,我需要在不同的域 www.domain2.com 上使用这些数据。有可能吗?

我正在尝试一些 ajax 和 json 代码,但没有成功。我越来越 Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at **** (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).

有人可以帮我吗?谢谢

【问题讨论】:

【参考方案1】:

只需在您的 .htaccess 文件中设置这些标题

<IfModule mod_headers.c>
        Header set Access-Control-Allow-Origin "*"
        Header set Access-Control-Allow-Origin %ACAOe env=ACAO
        Header add Access-Control-Allow-Headers "origin, x-requested-with, content-type"
        Header add Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS"
</IfModule>

这里 "*" 表示允许所有来源,如果您只想允许特定然后添加该网站的域。 剩下的就是定期连接到数据库,一切顺利。

【讨论】:

谢谢@Imran Ali。但这对主网站的安全性有多大好处? 我已经提到如果您使用 Asterisk,它将允许来自所有站点的 http 请求,因此最好使用域名而不是您只想允许的域名。 就我而言,我无法指定域。我正在开发一个 wordpress 插件,该插件使用来自主网站的一些数据。 那么就可以使用了。没有安全问题。 是否有任何关于这有多安全的消息?我开发的 API 在某些情况下需要连接到我的数据库来写入数据。它可以来自任何网站。所以允许从星号访问是安全的吗?

以上是关于从数据库中拉取跨域数据的主要内容,如果未能解决你的问题,请参考以下文章

jQuery 自动完成从 Mysql 数据库中拉取

在 Angular 中拉取和订阅 firebase 数据

SQL 查询只从一张表中拉取数据

jQuery 从目录中拉取图片

filebeat收集日志传输到Redis集群,logstash从Redis集群中拉取数据

使用 Atlassian Sourcetree,是不是可以在执行拉取之前查看将从远程存储库中拉取哪些更改?