
Research
Malicious npm Packages Impersonate Flashbots SDKs, Targeting Ethereum Wallet Credentials
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
@mkeen/rxhttp
Advanced tools
HTTP Client that uses Fetch API built with TypeScript that supports real-time JSON streams. It runs in NodeJS and Browser. It's powered by RXJS.
The Fetch API is the modern API for making http requests -- both long lived (streams) and traditional (simple). And RxJS makes it extremely convenient to build, chain, and consume asyncronous streams. These technologies all compliment each other well enough that it was worth creating this lib.
📀 Universal -- Works on both NodeJS and Browser
🌊 Real-time -- Supports long-lived real-time Chunked JSON streams
🆘 Complete Observable Lifecycle -- Simple request lifecycle uses Observable
callback functions (next
, error
, and complete
). Once the connection completes, or all subscribers have unsubbed, the connection will be cleaned up to ensure there aren't any memory leaks.
npm install @mkeen/rxhttp
https://www.npmjs.com/package/@mkeen/rxhttp
npm run doc
import { HttpRequest } from '@mkeen/rxhttp';
new HttpRequest<any>('https://localhost/simple')
.subscribe(
response => console.log('received response, connection closed', response);
);
// Output:
// received response, connection closed , {...}
import { HttpRequest, FetchBehavior } from '@mkeen/rxhttp';
interface Person {
name: string;
email: string;
}
new HttpRequest<Person>(
'https://localhost/person',
{ method: 'POST', body: {
email: 'mwk@mikekeen.com',
name: 'Mike Keen'
} }
)
.fetch()
.subscribe(
response => console.log('person created successfully, connection closed', response)
);
// Output:
// person created successfully, connection closed, {...}
import { HttpRequest, FetchBehavior } from '@mkeen/rxhttp';
interface Person {
name: string;
email: string;
}
new HttpRequest<Person>(
'https://localhost/person',
{ method: 'POST', body: {
email: 'mwk@mikekeen.com',
name: 'Mike Keen'
} },
FetchBehavior.simple
)
.fetch()
.subscribe(
(response: Person) => {
console.log('person created successfully, connection closed', response);
},
(error: any) => {
console.error('http error');
},
() => {
console.log('connection closed');
}
);
// Output:
// person created successfully, connection closed, {...}
import { HttpRequest, FetchBehavior} from '@mkeen/rxhttp';
interface Person {
name: string;
email: string;
}
const personStream = new HttpRequest<Person>(
'https://localhost/person', {
method: 'GET'
}, FetchBehavior.stream
)
.fetch()
.subscribe(
(incoming_data: Person) => {
console.log('got person update: ', incoming_data);
},
(error: any) => {
console.error('http error');
},
() => {
console.log('connection closed');
}
);
// Output:
// got person update: , {id: 1 ...
// got person update: , {id: 2 ...
// got person update: , {id: 1 ...
// ...
ISC (BSD 2 / MIT) - Enjoy
🇺🇸
FAQs
Modern Fetch-Based HTTP Client
We found that @mkeen/rxhttp 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.
Research
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
Security News
Ruby maintainers from Bundler and rbenv teams are building rv to bring Python uv's speed and unified tooling approach to Ruby development.
Security News
Following last week’s supply chain attack, Nx published findings on the GitHub Actions exploit and moved npm publishing to Trusted Publishers.