diff --git a/src/routes/v4/slp.js b/src/routes/v4/slp.js index 7d1e72f..6c5567d 100644 --- a/src/routes/v4/slp.js +++ b/src/routes/v4/slp.js @@ -35,7 +35,10 @@ util.inspect.defaultOptions = { depth: 5 } // Determine the Access password for a private instance of SLPDB. // https://gist.github.com/christroutner/fc717ca704dec3dded8b52fae387eab2 -const SLPDB_PASS = process.env.SLPDB_PASS ? process.env.SLPDB_PASS : 'BITBOX' +// Password for General Purpose (GP) SLPDB. +const SLPDB_PASS_GP = process.env.SLPDB_PASS_GP ? process.env.SLPDB_PASS_GP : 'BITBOX' +// Password for Whitelist (WL) SLPDB. +const SLPDB_PASS_WL = process.env.SLPDB_PASS_GP ? process.env.SLPDB_PASS_GP : 'BITBOX' // const rawtransactions = require('./full-node/rawtransactions') const RawTransactions = require('./full-node/rawtransactions') @@ -434,7 +437,7 @@ class Slp { const b64 = Buffer.from(s).toString('base64') const url = `${process.env.SLPDB_URL}q/${b64}` - const options = _this.generateCredentials() + const options = _this.generateCredentialsGP() // Request options const opt = { method: 'get', @@ -585,7 +588,7 @@ class Slp { } } - const options = _this.generateCredentials() + const options = _this.generateCredentialsGP() // Collect an array of promises, one for each request to slpserve. // This is a nested array of promises. @@ -807,7 +810,7 @@ class Slp { const b64 = Buffer.from(s).toString('base64') const url = `${process.env.SLPDB_URL}q/${b64}` - const options = _this.generateCredentials() + const options = _this.generateCredentialsGP() const opt = { method: 'get', baseURL: url, @@ -996,7 +999,7 @@ class Slp { const url = `${process.env.SLPDB_URL}q/${b64}` // console.log('url: ', url) - const options = _this.generateCredentials() + const options = _this.generateCredentialsGP() // Get data from SLPDB. const opt = { @@ -1130,7 +1133,7 @@ class Slp { } } - const options = _this.generateCredentials() + const options = _this.generateCredentialsGP() const s = JSON.stringify(query) const b64 = Buffer.from(s).toString('base64') @@ -1330,7 +1333,7 @@ class Slp { } } - const options = _this.generateCredentials() + const options = _this.generateCredentialsWL() const s = JSON.stringify(query) const b64 = Buffer.from(s).toString('base64') @@ -1424,7 +1427,7 @@ class Slp { const url = `${process.env.SLPDB_WHITELIST_URL}q/${b64}` // console.log('url: ', url) - const options = _this.generateCredentials() + const options = _this.generateCredentialsWL() // Get data from SLPDB. const opt = { @@ -1567,7 +1570,7 @@ class Slp { const b64 = Buffer.from(s).toString('base64') const url = `${process.env.SLPDB_URL}q/${b64}` - const options = _this.generateCredentials() + const options = _this.generateCredentialsGP() const opt = { method: 'get', baseURL: url, @@ -1727,11 +1730,32 @@ class Slp { } // Generates a Basic Authorization header for slpserve. - generateCredentials () { + generateCredentialsGP () { // Generate the Basic Authentication header for a private instance of SLPDB. const username = 'BITBOX' - const password = SLPDB_PASS + const password = SLPDB_PASS_GP const combined = `${username}:${password}` + // console.log(`combined: ${combined}`) + var base64Credential = Buffer.from(combined).toString('base64') + var readyCredential = `Basic ${base64Credential}` + + const options = { + headers: { + authorization: readyCredential + }, + timeout: 15000 + } + + return options + } + + // Generates a Basic Authorization header for slpserve. + generateCredentialsWL () { + // Generate the Basic Authentication header for a private instance of SLPDB. + const username = 'BITBOX' + const password = SLPDB_PASS_WL + const combined = `${username}:${password}` + // console.log(`combined: ${combined}`) var base64Credential = Buffer.from(combined).toString('base64') var readyCredential = `Basic ${base64Credential}` diff --git a/start-dev-example.sh b/start-dev-example.sh index 650b793..803aa75 100755 --- a/start-dev-example.sh +++ b/start-dev-example.sh @@ -16,9 +16,10 @@ export RPC_USERNAME=bitcoin export RPC_PASSWORD=password # SLPDB +export SLPDB_PASS_GP=somelongpassword export SLPDB_URL=http://:12300/ -export SLPDB_PASS=somelongpassword # Use the same address as SLPDB_URL if you don't have a separate whitelist server. +export SLPDB_PASS_WL=somelongpassword export SLPDB_WHITELIST_URL=http://:12300/ # slp-api alternative SLP validator using slp-validate: # https://github.com/Permissionless-Software-Foundation/slp-api