Javascript 如何将PHP数组传递到NodeJS HTTP服务器?
因此,我有一个名为“dbEmails.PHP”的PHP文件,它基本上将MySQL中的所有现有电子邮件写入一个数组:Javascript 如何将PHP数组传递到NodeJS HTTP服务器?,javascript,php,node.js,express,curl,Javascript,Php,Node.js,Express,Curl,因此,我有一个名为“dbEmails.PHP”的PHP文件,它基本上将MySQL中的所有现有电子邮件写入一个数组: <?php require_once __DIR__ . '../db.php'; $sth = $dbh->query('SELECT email FROM users'); while($row = $sth->fetch(PDO::FETCH_ASSOC)){ $emails[] = $row['email']; } echo json_enc
<?php
require_once __DIR__ . '../db.php';
$sth = $dbh->query('SELECT email FROM users');
while($row = $sth->fetch(PDO::FETCH_ASSOC)){
$emails[] = $row['email'];
}
echo json_encode(array($emails));
正如您在代码中看到的,我已经对我的问题进行了注释。我需要将PHP中的$emails
数组放入JS的var emails
我搜索了一些,但找不到解决办法。我想我不应该使用AJAX,我对Node一点都不了解
最好的办法是什么
问题2:
当我的数据库中有新的电子邮件条目时,var电子邮件
会自动更新吗?我想不是。如果它没有更新,那么有人能告诉我如何让我的var电子邮件保持最新吗?来自问题1
- 请使用express.js更新您的nodejs应用程序,好教程>>
- 你的节点应用程序应该接受post方法
- 您可以使用curl命令从php调用节点,并将电子邮件数据传递给它,无论是否成功,都可以得到结果
从问题2开始
- 如果您根据我上面的建议更新YUE节点应用程序,它应该会自动更新
您应该能够找到几个示例,例如如何使用curl向http服务器发送数据
var http = require('http');
var querystring = require('querystring');
//var emails = array called "emails" from "dbEmails.php"
function accountExists (email) {
return emails.indexOf(email) > -1;
}
var server = http.createServer(function(req, res) {
var params = req.url.split('?')[1];
var data = querystring.parse(params);
var email = data.email;
res.statusCode = 200;
res.setHeader("Content-Type", "application/json");
res.setHeader("Access-Control-Allow-Origin", "*");
res.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
if (accountExists(email)) {
res.write('""');
} else {
res.write('"true"');
}
res.end();
});
server.listen(6666);