Security News
Input Validation Vulnerabilities Dominate MITRE's 2024 CWE Top 25 List
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
fluxible-plugin-fetchr
Advanced tools
A plugin for fluxible applications to provide an isomorphic interface for RESTful services
Provides isomorphic RESTful service access to your Fluxible application using fetchr.
var FluxibleApp = require('fluxible-app');
var fetchrPlugin = require('fluxible-plugin-fetchr');
var app = new FluxApplication();
app.plug(fetchrPlugin({
xhrPath: '/api' // Path for XHR to be served from
}));
Now, when calling the createContext
method on the server, make sure to send in the request object and optionally pass an xhrContext
which will be used as parameters for all XHR calls:
app.createContext({
req: req,
xhrContext: { // Used as query params for all XHR calls
lang: 'en-US', // make sure XHR calls receive the same lang as the initial request
_csrf: 'a3fc2d' // CSRF token to validate on the server using your favorite library
}
});
actionContext.service.read(resource, params, [config,] callback)
: Call the read method of a service. See [https://github.com/yahoo/fetchr](fetchr docs) for more information.actionContext.service.create(resource, params, body, [config,] callback)
: Call the create method of a service. See [https://github.com/yahoo/fetchr](fetchr docs) for more information.actionContext.service.update(resource, params, body, [config,] callback)
: Call the update method of a service. See [https://github.com/yahoo/fetchr](fetchr docs) for more information.actionContext.service.delete(resource, params, [config,] callback)
: Call the delete method of a service. See [https://github.com/yahoo/fetchr](fetchr docs) for more information.actionContext.getServiceMeta()
: The plugin will collect metadata for service responses and provide access to it via this method. This will return an array of metadata objects.The plugin also provides access to some internals and the options that were passed in.
var pluginInstance = fetchrPlugin({
xhrPath: '/api'
});
pluginInstance.getXhrPath(); // returns '/api'
pluginInstance.getServiceClass(); // returns the fetchr instance used by the plugin
Since the fetchr plugin is in control the fetchr class, we expose this through the registerService
method.
pluginInstance.registerService(yourService);
Or if you need to do this from your application without direct access to the plugin
app.getPlugin('FetchrPlugin').registerService(yourService);
Fetchr also contains an express/connect middleware that can be used as your access point from the client.
var server = express();
server.use(pluginInstance.getXhrPath(), pluginInstance.getMiddleware());
This software is free to use under the Yahoo! Inc. BSD license. See the LICENSE file for license text and copyright information.
FAQs
A plugin for Fluxible applications to provide an isomorphic interface for RESTful services
The npm package fluxible-plugin-fetchr receives a total of 128 weekly downloads. As such, fluxible-plugin-fetchr popularity was classified as not popular.
We found that fluxible-plugin-fetchr demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 5 open source maintainers 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
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.
Research
Security News
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.