add some apple music auth stuff

This commit is contained in:
janis
2023-11-14 11:11:39 +01:00
parent 483de3cbc3
commit 83303be8e9
9 changed files with 182 additions and 19 deletions

View File

@@ -9,6 +9,7 @@ const session = require( 'express-session' );
const indexer = require( './indexer.js' );
const axios = require( 'axios' );
const ip = require( 'ip' );
const jwt = require( 'jsonwebtoken' );
app.use( bodyParser.urlencoded( { extended: false } ) );
@@ -230,6 +231,24 @@ app.get( '/getSongFile', ( req, res ) => {
} );
app.get( '/getAppleMusicDevToken', ( req, res ) => {
// sign dev token
const privateKey = fs.readFileSync( path.join( __dirname + '/config/apple_private_key.p8' ) ).toString();
// TODO: Remove secret
const config = JSON.parse( fs.readFileSync( path.join( __dirname + '/config/apple-music-api.config.secret.json' ) ) );
const jwtToken = jwt.sign( {}, privateKey, {
algorithm: "ES256",
expiresIn: "180d",
issuer: config.teamID,
header: {
alg: "ES256",
kid: config.keyID
}
} );
res.send( jwtToken );
} );
app.use( ( request, response, next ) => {
response.sendFile( path.join( __dirname + '' ) )
} );