我试图在 Heroku 上运行的 node.js 服务器中接收从我的客户端 adobe air 应用程序发送的数据,但没有成功。
这就是我发送数据的方式:
var loader : URLLoader = new URLLoader();
var request : URLRequest = new URLRequest("http://127.0.0.1:5000");
request.method = URLRequestMethod.GET;
loader.dataFormat = URLLoaderDataFormat.TEXT;
var variables:URLVariables = new URLVariables();
variables.data = 'this is data';
request.data = variables;
loader.addEventListener(Event.COMPLETE, onRestaurantObjectLoadComplete);
loader.load(request);
还有我用于接收请求的 Node.js 代码:
app.get('/',function (request, res) {
console.log("received request data" + request.data );
});
app.listen(port, function() {
console.log("Listening on " + port);
});
请求到达服务器,我可以将答案发送给客户端,但数据始终未定义。
此外,如果我尝试使用 POST 方法发送数据,我会在 AIR 应用程序中收到流错误。
从 AIR 应用程序向 node.js 服务器发送数据的正确方法是什么?
编辑:我设法让它在本地工作,但是当我将它上传到 heroku 时,它不起作用。 我将请求发送到 http://:(与我在本地所做的相同,但 myHerokuApp.com 是本地主机)并且我不断收到流错误。 将请求发送到的正确 URL 必须是什么?
最佳答案
它似乎只在模拟器上不起作用,一旦在真实设备上进行测试,它将与 Heroku 提供的 URL 一起工作。
仍然不知道如何让它在模拟器上运行。
关于node.js - 在 Heroku 上运行的 node.js 服务器中接收从 AIR 应用程序发送的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16985401/