New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

node-ral

Package Overview
Dependencies
Maintainers
1
Versions
96
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

node-ral - npm Package Compare versions

Comparing version 0.0.33 to 0.0.34

0

benchmark/config/config.js

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ function showMem () {

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

27

lib/config.js

@@ -202,9 +202,5 @@ /*

*/
function parseContext(serviceID){
function parseContext(serviceID, options){
var serviceInfo = config[serviceID];
var context = {};
// context.unpack = RalModule.modules.converter[serviceInfo.unpack].unpack;
// context.pack = RalModule.modules.converter[serviceInfo.pack].pack;
// context.unpackConverter = RalModule.modules.converter[serviceInfo.unpack];
// context.packConverter = RalModule.modules.converter[serviceInfo.pack];
context.protocol = RalModule.modules.protocol[serviceInfo.protocol];

@@ -215,10 +211,7 @@ context.balance = RalModule.modules.balance[serviceInfo.balance];

context.protocolContext = context.protocol.normalizeConfig(serviceInfo);
context.update = function(options){
context.packConverter = RalModule.modules.converter[options.pack];
context.pack = context.packConverter.pack;
context.unpackConverter = RalModule.modules.converter[options.unpack];
context.unpack = context.unpackConverter.unpack;
};
contextCache[serviceID] = context;
context.packConverter = RalModule.modules.converter[options.pack || serviceInfo.pack];
context.pack = context.packConverter.pack;
context.unpackConverter = RalModule.modules.converter[options.unpack || serviceInfo.unpack];
context.unpack = context.unpackConverter.unpack;
return context;
}

@@ -232,2 +225,4 @@

module.exports.getContext = parseContext;
module.exports.getConf = function(name){

@@ -237,8 +232,2 @@ //return a copy

var conf = ralUtil.deepClone(config[name]);
conf.__defineGetter__('context', function(){
if (!contextCache[name]){
parseContext(name, config[name]);
}
return contextCache[name];
});
return conf;

@@ -245,0 +234,0 @@ }

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -47,3 +47,3 @@ /*

} else {
var context = conf.context;
var context = conf.context = config.getContext(serviceName, options);
//normalize conf and options for merge to request options

@@ -54,4 +54,2 @@ context.protocol.normalizeConfig(conf);

context.update(conf);
this.on('retry', function (err) {

@@ -58,0 +56,0 @@ if (this._retryTimes >= conf.retry) {

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

{
"name": "node-ral",
"version": "0.0.33",
"version": "0.0.34",
"description": "a rpc client for node",

@@ -8,5 +8,5 @@ "main": "index.js",

"pub": "npm publish --registry=http://registry.npmjs.org",
"test": "mocha -t 10000 --reporter dot --check-leaks test/",
"test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot -t 10000 --check-leaks test/",
"test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks -t 10000 --slow 0 test/"
"test": "mocha -t 20000 --reporter dot --check-leaks test/",
"test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot -t 20000 --check-leaks test/",
"test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks -t 20000 --slow 0 test/"
},

@@ -13,0 +13,0 @@ "repository": {

@@ -11,9 +11,18 @@ node-ral

## 兼容性
- [x] node 0.8.x
- [x] node 0.10.x
- [x] node 0.12.x
- [x] io.js
> io.js 1.63至1.8.1版本不支持GBK编码
## 快速开始
`node-ral` 为了实现后端服务配置的统一管理,要求后端服务请求的配置与业务实现分离,因此在使用 `node-ral` 之前必须创建后端服务的配置文件。
`node-ral` 为了实现后端服务配置的统一管理,要求后端服务请求的配置与业务实现分离,因此在使用之前必须创建后端服务的配置文件。
我们以 [百度地图WebAPI](http://developer.baidu.com/map/index.php?title=webapi/guide/webservice-placeapi#Place.E5.8C.BA.E5.9F.9F.E6.A3.80.E7.B4.A2POI.E6.9C.8D.E5.8A.A1) 为例做一个简单的DEMO,你也可以直接在[example/MAPAPI](./example/MAPAPI)中直接下载。
我们以 [百度地图WebAPI](http://developer.baidu.com/map/index.php?title=webapi/guide/webservice-placeapi#Place.E5.8C.BA.E5.9F.9F.E6.A3.80.E7.B4.A2POI.E6.9C.8D.E5.8A.A1) 为例做一个简单的DEMO,你也可以直接在[example/baidumap](./example/baidumap)中直接下载。
### 安装 `node-ral`
### 安装

@@ -36,3 +45,2 @@ ```bash

unpack: 'json', // 约定服务端返回JSON数据
method: 'GET', // 使用GET请求
encoding: 'utf-8', // 服务器返回utf-8编码

@@ -44,2 +52,3 @@ // 负载均衡与超时重试配置

// HTTP协议特有配置
method: 'GET', // 使用GET请求
query: { // 服务的全局query

@@ -66,3 +75,3 @@ ak: '0C62f9f0ee027b6052dfa35b0f38b61a',

### 初始化RAL
### 初始化

@@ -134,24 +143,4 @@ ```javascript

## 目录
## 文档
## 通用配置
## 内置支持
### 请求协议
### 数据格式
## 扩展能力
### 请求协议
### 数据格式
## API
### 执行请求
### 异常处理
### 封装
请查阅文档[WIKI](https://github.com/fex-team/node-ral/wiki)

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ 'use strict';

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -13,3 +13,3 @@ /*

server: {
host: 'www.webservicex.com',
host: 'www.webservicex.net',
port: 80

@@ -16,0 +16,0 @@ }

@@ -381,2 +381,44 @@ /*

});
it('should use right context when concurrency request', function(done) {
before(function( ok ){
isInited.on('done', ok);
});
var count = 2;
RAL('CHANGE_PACK_UNPACK', {
data: {
msg: 'hi',
name: '何方石'
},
pack: 'querystring',
unpack: 'json',
retry: 2,
timeout: 100
}).on('data', function(data){
data.query.msg.should.eql('hi');
data.query.name.should.eql('何方石');
data.query.from.should.eql('change');
partialDone();
});
RAL('CHANGE_PACK_UNPACK', {
data: {
msg: 'hi',
name: '何方石'
},
pack: 'stream',
unpack: 'stream',
retry: 2,
timeout: 100
}).on('error', function(err){
err.message.should.be.match(/invalid pack data/);
partialDone();
});
function partialDone() {
count--;
if (count === 0) {
done();
}
}
});
});

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

@@ -0,0 +0,0 @@ /*

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc