Re-organize package URL parsing
This commit is contained in:
@ -1,9 +1,9 @@
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const semver = require('semver')
|
||||
const createPackageURL = require('../utils/createPackageURL')
|
||||
const getPackage = require('./utils/getPackage')
|
||||
const getPackageInfo = require('./utils/getPackageInfo')
|
||||
const PackageURL = require('../PackageURL')
|
||||
|
||||
const FindExtensions = [ '', '.js', '.json' ]
|
||||
|
||||
@ -137,7 +137,7 @@ function fetchFile(req, res, next) {
|
||||
res.set({
|
||||
'Cache-Control': 'public, max-age=60',
|
||||
'Cache-Tag': 'redirect'
|
||||
}).redirect(PackageURL.create(req.packageName, tags[req.packageVersion], req.filename, req.search))
|
||||
}).redirect(createPackageURL(req.packageName, tags[req.packageVersion], req.filename, req.search))
|
||||
} else {
|
||||
const maxVersion = semver.maxSatisfying(Object.keys(versions), req.packageVersion)
|
||||
|
||||
@ -146,7 +146,7 @@ function fetchFile(req, res, next) {
|
||||
res.set({
|
||||
'Cache-Control': 'public, max-age=60',
|
||||
'Cache-Tag': 'redirect'
|
||||
}).redirect(PackageURL.create(req.packageName, maxVersion, req.filename, req.search))
|
||||
}).redirect(createPackageURL(req.packageName, maxVersion, req.filename, req.search))
|
||||
} else {
|
||||
res.status(404).type('text').send(`Cannot find package ${req.packageSpec}`)
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
const validateNPMPackageName = require('validate-npm-package-name')
|
||||
const PackageURL = require('../PackageURL')
|
||||
const parsePackageURL = require('../utils/parsePackageURL')
|
||||
|
||||
const KnownQueryParams = {
|
||||
expand: true,
|
||||
@ -45,7 +45,7 @@ function createSearch(query) {
|
||||
/**
|
||||
* Parse and validate the URL.
|
||||
*/
|
||||
function parsePackageURL(req, res, next) {
|
||||
function packageURL(req, res, next) {
|
||||
// Redirect /_meta/pkg to /pkg?meta.
|
||||
if (req.path.match(/^\/_meta\//)) {
|
||||
delete req.query.json
|
||||
@ -53,7 +53,7 @@ function parsePackageURL(req, res, next) {
|
||||
return res.redirect(req.path.substr(6) + createSearch(req.query))
|
||||
}
|
||||
|
||||
const url = PackageURL.parse(req.url)
|
||||
const url = parsePackageURL(req.url)
|
||||
|
||||
// Do not allow invalid URLs.
|
||||
if (url == null)
|
||||
@ -82,4 +82,4 @@ function parsePackageURL(req, res, next) {
|
||||
next()
|
||||
}
|
||||
|
||||
module.exports = parsePackageURL
|
||||
module.exports = packageURL
|
Reference in New Issue
Block a user