Security News
OpenJS: “XZ Utils Cyberattack Likely Not an Isolated Incident”
OpenJS is warning of social engineering takeovers targeting open source projects after receiving a credible attempt on the foundation.
fanboy
Advanced tools
Weekly downloads
Readme
The Fanboy Node.js package provides a caching proxy for a subset of the iTunes Search API.
null
or undefined
.
A map or filter callback applied with each JSON result obj
.
obj
The original, JSON parsed, iTunes search result object.Returns result or void()
.
The default callback adds the required guid
property to obj
and returns it.
A Level database.
The options for the Fanboy cache:
country = 'us'
The country code for the search API.hostname = 'itunes.apple.com'
The host name of the store.max
= 500 Number of in-memory non-result terms to save round-trips.media = 'all'
The media type to search for.port = 80
The port to access the store.result
result()
ttl = 24 * 3600 * 1000
Time in milliseconds before cached items go stale.The main module exports the Fanboy
class, a stateful cache object with a persistent Level cache and minor in-memory black-listing. To access the Fanboy
class require('fanboy')
.
Fanboy(db, opts)
db
database()
The name of the file system directory for the database.opts
opts()
Optional parameters of the cache.const { Fanboy, createLevelDB } = require('fanboy')
function createCache () {
const location = '/tmp/fanboy'
const db = createLevelDB(location)
return new Fanboy(db, opts())
}
const fanboy = createCache()
fanboy.search(term, (error, items) => {
if (error) {
return console.error(error)
}
for (let item of items) {
console.log(item))
}
})
This will search remotely and cache the result. Until the term
expires subsequent requests hit the cache.
fanboy.lookup(guid, (error, item) => {
if (error) {
return console.error(error)
}
console.log(item))
})
In iTunes you can lookup an item by its guid
.
fanboy.suggest(term, limit, (error, terms) => {
if (error) {
return console.error(error)
}
for (let term of terms) {
console.log(term))
}
})
The suggestions index must be populated by prior searching to yield results. You can limit
the number of suggested terms.
Try the REPL, its methods let you optionally select a property by name ('collectionName') for clearer output.
$ ./repl
fanboy> search('wnyc', 'collectionName')
By default the number of result items per term is limited to 50.
With npm, do:
$ npm install fanboy
FAQs
Caching iTunes search proxy
The npm package fanboy receives a total of 3 weekly downloads. As such, fanboy popularity was classified as not popular.
We found that fanboy demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
OpenJS is warning of social engineering takeovers targeting open source projects after receiving a credible attempt on the foundation.
Company News
Come meet the Socket team at BSidesSF and RSA! We're sponsoring several fun networking events and we would love to see you there.
Security News
OSI is starting a conversation aimed at removing the excuse of the SaaS loophole for companies navigating licensing and the complexities of doing business with open source.