我正在尝试让我的函数返回http get请求,但是,无论如何,它似乎在?scope中丢失了。我对Node.js不熟悉,因此不胜感激
function getData(){
var http = require('http');
var str = '';
var options = {
host: 'www.random.org',
path: '/integers/?num=1&min=1&max=10&col=1&base=10&format=plain&rnd=new'
};
callback = function(response) {
response.on('data', function (chunk) {
str += chunk;
});
response.on('end', function () {
console.log(str);
});
//return str;
}
var req = http.request(options, callback).end();
// These just return undefined and empty
console.log(req.data);
console.log(str);
}
当然,您的日志会返回undefined
:您在完成请求之前先进行日志。问题不是范围,而是 异步性 。
http.request
是异步的,这就是为什么它将回调作为参数的原因。做您在回调中要做的事情(传递给的response.end
):
callback = function(response) {
response.on('data', function (chunk) {
str += chunk;
});
response.on('end', function () {
console.log(req.data);
console.log(str);
// your code here if you want to use the results !
});
}
var req = http.request(options, callback).end();
我尝试做的是从同一个站点发布数据并从它创建一个新的订单(当提交按钮被点击时)。我没有任何信息在我的请求。身体,我怀疑是在我的ejs出了问题,任何反馈是非常感谢的。 我的ejs文件: 和我的js文件:
问题内容: 这是我在index.html上的代码: 我如何编程test.php以获取在AJAX API中发送的“数据”? 问题答案: 您在这里问一个非常基本的问题。您首先应该阅读一些Ajax教程。只是为了帮助您(假设您知道发送数据的GET和POST方法),数据中的“数据”:函数(数据)中的“数据”与“数据”不同。为了清楚起见,您应该为它们命名不同,如下所示: 这清楚地表明,一个是要通过POST参数
检查userDbRecord Mono是否为空以及如果不为空则从中提取phone属性的最佳方法是什么?
原理 对于POST请求的处理,koa2没有封装获取参数的方法,需要通过解析上下文context中的原生node.js请求对象req,将POST表单数据解析成query string(例如:a=1&b=2&c=3),再将query string 解析成JSON格式(例如:{"a":"1", "b":"2", "c":"3"}) 注意:ctx.request是context经过封装的请求对象,ctx.
使用方法 在koa中,获取GET请求数据源头是koa中request对象中的query方法或querystring方法,query返回是格式化好的参数对象,querystring返回的是请求字符串,由于ctx对request的API有直接引用的方式,所以获取GET请求数据有两个途径。 1.是从上下文中直接获取 请求对象ctx.query,返回如 { a:1, b:2 } 请求字符串 ctx.que
问题内容: 基本上,我在这里尝试做的是检索图像并将其转换为base64。 通过阅读此处的评论,它指出: “当然。在将资源作为ArrayBuffer提取后,从中创建一个blob。一旦有了它,就可以直接对base / blob 或进行base64编码 。” 但是,只是,而我需要从图像中获取二进制文件,以便可以将其转换为base64并使用数据将其显示在img标签中。 有人知道如何实现这一目标吗? 先感谢