节点ACS 404未找到Java HTTP客户端的响应代码
我正在开发一个项目,其中有一个Java调度器,它是一个HTTP客户端,并将xml作为数据发送给我的节点应用程序。 在application.js的索引函数中,我写了我的逻辑来接收xml并将相应的xml转换为json,但是当我运行我的应用程序时,我从acs获取了404响应代码,但是当我从浏览器发送请求。 请告诉我我在这方面缺乏什么。 我发布了java http客户端和节点acs代码。
Java HTTP客户端代码是
URL url = new URL("http://localhost:port/");
HttpURLConnection httpCon = (HttpURLConnection) url.openConnection();
httpCon.setDoOutput(true);
httpCon.setRequestMethod("POST");
DataOutputStream os = new DataOutputStream(
httpCon.getOutputStream());
PrintWriter pw = new PrintWriter(os);
pw.println(xmlString.toString());
pw.flush();
System.out.println(httpCon.getResponseCode());
System.out.println(httpCon.getResponseMessage());
以下是我的ACS索引功能:
function index(req, res) {
console.log("TEST *********************************");
req.on('data', function (data) {
console.log("Data arrived");
});
req.on('end', function () {
console.log('POSTed: ');
res.writeHead(200);
res.end();
});
}
我将代码 acs run --port 7654 为: acs run --port 7654
从上面的代码中,我得到了我的java http客户端的404响应代码,但是如果我在一个简单的js文件中写入相同的节点逻辑:
http.createServer(function (req, res) {
req.on('data', function (data) {
console.log("Data Arrived");
});
req.on('end', function () {
console.log('Done');
res.writeHead(200);
res.end();
});
}).listen('7654', function(){
console.log("Server Connected to : "+ 7654);
});
并运行相同的node <jsfilename>然后它工作正常,并发送200 OK响应到java http客户端。
1-我错过了什么节点ACS应用程序?
2-我们是否需要在节点acs应用程序中配置http服务器,因为如果我在application.js文件中编写了以下逻辑,那么它在节点acs中也是如此:
http.createServer(function (req, res) {
req.on('data', function (data) {
console.log("Data Arrived");
});
req.on('end', function () {
console.log('Done');
res.writeHead(200);
res.end();
});
}).listen('7654', function(){
console.log("Server Connected to : "+ 7654);
});
我找到了解决方案。 Java调度程序HTTP请求是POST请求,并且在NodeACS应用程序中用于索引方法,我没有提到方法属性。 现在我提到“方法”:“POST”,那么它的工作正常。
链接地址: http://www.djcxy.com/p/52511.html上一篇: Node ACS 404 Not found response code to Java http client
