在 index.html 和 app.js [node.js] 之间共享变量
Share variables between index.html and app.js [node.js]
//index.html
var audioCtx = new AudioContext();
var mySampleRate = audioCtx.sampleRate;
//app.js
var fileWriter = new wav.FileWriter(n + '.wav', {
channels: 1,
sampleRate: mySampleRate,
bitDepth: 16
});
我想与 node.js 服务共享 index.html 的 mySampleRate [值]。我该怎么做?
首先,您需要在您的节点服务器中创建一个服务方法。
Express 是一个流行的框架,简化了这个过程。
var app = require( "express" )(),
bodyParser = require( "body-parser" );
app.use( bodyParser.json() );
app.post( "/rate", function( req, res ) {
console.log( req.body.rate );
} );
在客户端,浏览器提供了一个 API 用于通过名为 XMLHttpRequest 的对象向服务器发出 HTTP 请求,但您可以选择 superagent 之类的东西以获得更好的 API 以及在整个浏览器中更一致的实现。
它应该看起来像这样:
var audioCtx = new AudioContext(),
mySampleRate = audioCtx.sampleRate;
request
.post( "/rate" )
.send( { rate: mySampleRate } )
.end( function( err, res ){
if ( res.ok ) {
console.log( "yey" );
} else {
console.log( "ney..." + res.text );
}
} );
//index.html
var audioCtx = new AudioContext();
var mySampleRate = audioCtx.sampleRate;
//app.js
var fileWriter = new wav.FileWriter(n + '.wav', {
channels: 1,
sampleRate: mySampleRate,
bitDepth: 16
});
我想与 node.js 服务共享 index.html 的 mySampleRate [值]。我该怎么做?
首先,您需要在您的节点服务器中创建一个服务方法。
Express 是一个流行的框架,简化了这个过程。
var app = require( "express" )(),
bodyParser = require( "body-parser" );
app.use( bodyParser.json() );
app.post( "/rate", function( req, res ) {
console.log( req.body.rate );
} );
在客户端,浏览器提供了一个 API 用于通过名为 XMLHttpRequest 的对象向服务器发出 HTTP 请求,但您可以选择 superagent 之类的东西以获得更好的 API 以及在整个浏览器中更一致的实现。
它应该看起来像这样:
var audioCtx = new AudioContext(),
mySampleRate = audioCtx.sampleRate;
request
.post( "/rate" )
.send( { rate: mySampleRate } )
.end( function( err, res ){
if ( res.ok ) {
console.log( "yey" );
} else {
console.log( "ney..." + res.text );
}
} );