我对使用Node.js“请求”发送的进度有疑问。我有一个充当代理的Node.js应用程序,实际上将主体转发到另一台服务器。我想查看此上传操作的进度。现在我正在这样做:
BROWSER
-> UPLOAD TO NODE
-> UPLOAD TO 3rd PARTY SERVICE
-> RETURN 3rd PARTY RESPONSE TO BROWSER
Run Code Online (Sandbox Code Playgroud)
如果可能的话,我将其记录下来以检查console.log取得了多少进展。但是,也有可能返回一个
res.send(progress)
Run Code Online (Sandbox Code Playgroud)
同时,在等待上传完成并将客户端发送回客户端的同时,上传成功了吗?
BROWSER
-> UPLOAD TO NODE
-> UPLOAD TO 3rd PARTY SERVICE
-> RETURN progress <-
-> RETURN progress <-
...etc.
-> RETURN 3rd PARTY RESPONSE TO BROWSER
Run Code Online (Sandbox Code Playgroud)
这是上载代码(非常简单)。
var requestOptions = {
timeout: 120000,
url: url, //URL to hit
method: 'post',
headers: headers,
body: payload //Set the body as a string
};
request(requestOptions, function (error, response, body) { …Run Code Online (Sandbox Code Playgroud)