无法从节点调用 REST.js如果我从浏览器调用,则可以正常工作
Unable to invoke REST from node.js which works if I invoke from browser?
我正在尝试调用在另一台机器上运行的WebServer [猫鼬嵌入式Webserver]。
下面是代码。
var express = require('express');
var http = require ('http');
var router = express.Router();
/* GET home page. */
router.get('/', function(req, res) {
res.render('index', { title: 'Express' });
});
router.get ('/start', function (req, res) {
res.render('start', { title: 'Hello, World!' });
});
router.get ('/startAction', function (req, res) {
jsonObject = JSON.stringify ({
"n1" : 8,
"n2" : 10
}); // jSon Data.
var postheaders = {
'content-Type' : 'application/json',
'content-Length' : Buffer.byteLength(jsonObject, 'utf8')
}
var optionspost = {
host : "http://192.168.6.120/",
port : 5432,
path : "/api/sum",
method : "POST",
headers : postheaders
};
console.log ("Invoking Restful API");
var reqPost = http.request(optionspost, function(res) {
console.log ("status code ", res.statusCode);
res.render('start', { title: 'Send some result of Request..' });
});
});
module.exports = router;
我得到的错误是..
events.js:72
throw er; // Unhandled 'error' event
^
Error: getaddrinfo ENOTFOUND
at errnoException (dns.js:37:11)
at Object.onanswer [as oncomplete] (dns.js:124:16)
但是,如果我从 html 页面这样做,同样的请求有效。
<script language="javascript" type="text/javascript">
jQuery(function() {
$(document).on('keyup', '#n1, #n2', function() {
$.ajax({
url: '/api/sum',
method: 'POST',
dataType: 'json',
data: { n1: $('#n1').val(), n2: $('#n2').val() },
success: function(json) {
$('#result').html(json.result);
}
});
});
});
</script>
我对节点.js和所有内容都很陌生。请指出罪魁祸首在哪里?
这个:
host : "http://192.168.6.120/",
应该是: host : "192.168.6.120",
.
相关文章:
- 为什么ng控制器不调用或工作或功能不工作
- Javascript作用域和Ajax调用;工作不正常
- 给出<选项>标记一个类?API调用不工作
- 让jquery插件在Ajax调用后工作
- 按钮上的数据加载消息无法与ajax调用一起工作
- 当控制台不在't在chrome中打开,有些项目不再可点击(有些js调用停止工作)
- 如何使pjax:postate像一个简单的pjax调用一样工作
- REST API 调用仅工作一次
- 如何确保 javascript 函数在多个调用上工作
- AJAX 调用只工作一次
- Rails 4 Ajax 调用只工作一次
- 对单个 PHP 脚本的多个 AJAX 调用划分工作负载 = 服务器端多线程
- AJAX 调用只工作一次
- 异步服务调用不工作
- jquery:制作按钮click&json调用一起工作,但保持它们分离
- AJAX GET调用将在第一次调用时工作,但在其他单击之后不工作
- AJAX调用不工作在Cordova 3.5,但将工作时,在浏览器中查看
- Ajax调用不工作与onclick
- Ajax调用有时工作,有时工作和刷新,有时刷新和失败....
- 封装的API.对外部javascript函数的调用不工作