以下代码在本地部署,接收请求并将其转发到另一台服务器以验证许可证时有效:
var express = require("express");
var app = express();
var request = require("request");
var ddKey = "someKey";
var ddSecret = "someSecret";
var ProId = "someId";
var testLicense = "someLicense";
app.get("/", function(req, res){
var license = req.query["license"] || "test";
var url = "https://"+ddKey+":"+ddSecret+"@licenseServer.com/products/"+ProId+"/licenses/check_valid?key="+license;
request.get(url, {"auth": {"user": ddKey, "pass": ddSecret}, "json": true}, function(error, response, body){
res.send("BODY:", response.body);
});
});
var port = process.env.PORT || 3001;
app.listen(port, function(){
console.log("listening on port ", port);
});
然而,当我在heroku上部署它时,并向heroku应用程序发送请求时,我收到“没有收到数据”屏幕以及此消息:
错误324(net :: ERR_EMPTY_RESPONSE):服务器关闭连接而不发送任何数据。
当我检查heroku日志时,我看到heroku指示以下错误:
格式不正确的HTTP响应
我无法找到构成格式正确的响应的内容。
感谢您提供任何帮助。