如何将数据从托管在 Heroku 上的 Node.js 应用程序发送到托管在完全独立的 (Cpanel) 服务器上的 PHP 文件?
How can I send data from a Node.js application hosted on Heroku to a PHP file hosted on a completely separate (Cpanel) server?
在搜索了 30 多分钟后,我似乎无法在任何地方找到这个问题的好答案。我希望这个问题还没有被问到。
所以,我想制作一个在线游戏。这将是一个非常简单的在线游戏(主要用于练习)。我想在 Heroku 上托管这个游戏,我将使用 Node.js 编写游戏代码。现在,我有一个单独的服务器(共享服务器 运行 Apache 和 Cpanel),我想在其中存储游戏的所有永久数据(在 MySQL 数据库中)。所以我需要做的是在我的 Apache 网络服务器上使用 PHP 来提供游戏,允许用户在 Apache 服务器上创建 accounts/sign 帐户(使用也位于那里的 MySQL 数据库),然后我希望他们能够“加入房间”,当他们这样做时,我想将他们发送到 Heroku 上的 Node.js 服务器 运行,并允许该服务器处理所有事情与游戏玩法相关(通过 WebSockets)。现在,在他们完成游戏后,我想将他们的分数和一些其他相关数据保存到我的 Apache 服务器上的 MySQL 数据库中……有什么方法可以做到这一点吗?有没有什么方法可以将数据从 Heroku 上的 Node.js 服务器 运行 发送到我的 Apache 服务器上的 PHP 文件? (例如,handlepostgame.php 或类似的东西)
我希望这是一个写得清楚的问题,并且您能够轻松理解我的问题。如果没有,请告诉我,我会尽量说得更清楚!提前致谢。
感谢@ADyson 为我指明了正确的方向!
所以,我找到了适合我需要的答案!这是我的“requesttophp.js”文件:(Node.js)
var http = require('http');
console.log("running");
var query = "something=cookie";
var queryLength = query.length;
var options = {
host: 'www.mydomain.com',
path: '/path/to/fromnodejs.php',
method: 'POST',
headers:{
'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length': queryLength
}
};
callback = function(response) {
var str = ''
response.on('data', function (chunk) {
str += chunk;
});
response.on('end', function () {
console.log(str);
});
}
var req = http.request(options, callback);
req.write(query);
req.end();
respondtonodejs.php: (PHP)
<?php
echo "it worked\n";
echo $_POST["something"];
?>
结果是
running
it worked
cookie
它完全符合我的要求! :) 谢谢。
在搜索了 30 多分钟后,我似乎无法在任何地方找到这个问题的好答案。我希望这个问题还没有被问到。
所以,我想制作一个在线游戏。这将是一个非常简单的在线游戏(主要用于练习)。我想在 Heroku 上托管这个游戏,我将使用 Node.js 编写游戏代码。现在,我有一个单独的服务器(共享服务器 运行 Apache 和 Cpanel),我想在其中存储游戏的所有永久数据(在 MySQL 数据库中)。所以我需要做的是在我的 Apache 网络服务器上使用 PHP 来提供游戏,允许用户在 Apache 服务器上创建 accounts/sign 帐户(使用也位于那里的 MySQL 数据库),然后我希望他们能够“加入房间”,当他们这样做时,我想将他们发送到 Heroku 上的 Node.js 服务器 运行,并允许该服务器处理所有事情与游戏玩法相关(通过 WebSockets)。现在,在他们完成游戏后,我想将他们的分数和一些其他相关数据保存到我的 Apache 服务器上的 MySQL 数据库中……有什么方法可以做到这一点吗?有没有什么方法可以将数据从 Heroku 上的 Node.js 服务器 运行 发送到我的 Apache 服务器上的 PHP 文件? (例如,handlepostgame.php 或类似的东西)
我希望这是一个写得清楚的问题,并且您能够轻松理解我的问题。如果没有,请告诉我,我会尽量说得更清楚!提前致谢。
感谢@ADyson 为我指明了正确的方向!
所以,我找到了适合我需要的答案!这是我的“requesttophp.js”文件:(Node.js)
var http = require('http');
console.log("running");
var query = "something=cookie";
var queryLength = query.length;
var options = {
host: 'www.mydomain.com',
path: '/path/to/fromnodejs.php',
method: 'POST',
headers:{
'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length': queryLength
}
};
callback = function(response) {
var str = ''
response.on('data', function (chunk) {
str += chunk;
});
response.on('end', function () {
console.log(str);
});
}
var req = http.request(options, callback);
req.write(query);
req.end();
respondtonodejs.php: (PHP)
<?php
echo "it worked\n";
echo $_POST["something"];
?>
结果是
running
it worked
cookie
它完全符合我的要求! :) 谢谢。