以下代码在本地部署、接收请求并将其转发到另一台服务器以验证许可证时有效:
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 响应
我无法找到构成正确格式响应的内容。
感谢您提供任何帮助。